In the code below I merge array $b with each element of array $a.
So array $a must be after:
$a == array(array(1, 2, 6, 7, 8), array(2, 3, 6, 7, 8), array(4, 5, 6,
7, 8));
instead, it seems to overwrite last element of $a with before-last and
we have:
$a == array(array(1, 2, 6, 7, 8), array(2, 3, 6, 7, 8), array(2, 3, 6,
7, 8));
php version: PHP 5.1.0RC1 (cli) (built: Aug 16 2005 13:51:15)
(the windows version)
It is a php bug or a my bug?
I see that var_dump($a); prints the corrent data but when I print
element-element var_dump it prints the before-last element two times and
last element zero times.
----------------------------------------------
<?
$a = array(array(1, 2), array(2, 3), array(4, 5));
$b = array(6, 7, 8);
foreach($a as & $v)
$v = array_merge($v, $b);
var_dump($a);
foreach($a as $v)
var_dump($v);
?>
---------------------------------------------- 5 1137
Chameleon wrote: I see that var_dump($a); prints the corrent data but when I print element-element var_dump it prints the before-last element two times and last element zero times.
Unreproducable with version 5.1.1; upgrade to this version first, then try
it again.
JW
Toby Inkster wrote: Chameleon wrote:
$a == array( ^^
Should be a single equals sign, right?
So array $a must be after:
$a == array(array(1, 2, 6, 7, 8), array(2, 3, 6, 7, 8), array(4, 5, 6,
7, 8));
I mean:
So array $a must be after equals to array(array(1, 2, 6, 7, 8), array(2,
3, 6, 7, 8), array(4, 5, 6, 7, 8));
Chameleon wrote: It is a php bug or a my bug?
It's your bug I suspect. The problem can't be reproduced with the code
as given. If you move the var_dump($a) to the end, then you see it.
<?
$a = array(array(1, 2), array(2, 3), array(4, 5));
$b = array(6, 7, 8);
foreach($a as & $v)
$v = array_merge($v, $b);
foreach($a as $v)
var_dump($v);
var_dump($a);
?>
The second foreach() is setting the value of $v to each element in $a.
At this point, $v is still pointing to the last element in $a,
resulting from the first foreach(). The last element in $a is thus is
set repeatedly to all elements preceding it.
It's a good idea to unset() references when they're no longer needed to
avoid unintended modification later on.
Chameleon wrote: ---------------------------------------------- <? $a = array(array(1, 2), array(2, 3), array(4, 5)); $b = array(6, 7, 8);
foreach($a as & $v) $v = array_merge($v, $b);
/* references or no references I don't like to change
* the values that control the foreach() loop.
* I changed your foreach() code and it worked here.
*/
$tmp = array();
foreach($a as $v)
$tmp[] = array_merge($v, $b);
$a = $tmp;
unset($tmp); var_dump($a); foreach($a as $v) var_dump($v); ?> ---------------------------------------------- This thread has been closed and replies have been disabled. Please start a new discussion. Similar topics
by: William C. White |
last post by:
Does anyone know of a way to use PHP /w Authorize.net AIM without using
cURL? Our website is hosted on a shared drive and the webhost company
doesn't installed additional software (such as cURL)...
|
by: Albert Ahtenberg |
last post by:
Hello,
I don't know if it is only me but I was sure that header("Location:url")
redirects the browser instantly to URL, or at least stops the execution of
the code. But appearantely it continues...
|
by: James |
last post by:
Hi,
I have a form with 2 fields.
'A'
'B'
The user completes one of the fields and the form is submitted.
On the results page I want to run a query, but this will change
subject to which...
|
by: Ollivier Robert |
last post by:
Hello,
I'm trying to link PHP with Oracle 9.2.0/OCI8 with gcc 3.2.3 on a Solaris9
system. The link succeeds but everytime I try to run php, I get a SEGV from
inside the libcnltsh.so library.
...
|
by: Richard Galli |
last post by:
I want viewers to compare state laws on a single subject.
Imagine a three-column table with a drop-down box on the top. A viewer
selects a state from the list, and that state's text fills the...
|
by: Albert Ahtenberg |
last post by:
Hello,
I have two questions.
1. When the user presses the back button and returns to a form he filled
the form is reseted. How do I leave there the values he inserted?
2. When the...
|
by: inderjit S Gabrie |
last post by:
Hi all
Here is the scenerio ...is it possibly to do this...
i am getting valid course dates output on to a web which i have designed
....all is okay so far , look at the following web url
...
|
by: Jack |
last post by:
Hi All,
What is the PHP equivilent of Oracle bind variables in a SQL statement, e.g.
select x from y where z=:parameter
Which in asp/jsp would be followed by some statements to bind a value...
|
by: Sandwick |
last post by:
I am trying to change the size of a drawing so they are all 3x3.
the script below is what i was trying to use to cut it in half ... I
get errors.
I can display the normal picture but not the...
|
by: Charles Arthur |
last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
|
by: BarryA |
last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
|
by: nemocccc |
last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
|
by: Hystou |
last post by:
There are some requirements for setting up RAID:
1. The motherboard and BIOS support RAID configuration.
2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
|
by: Oralloy |
last post by:
Hello folks,
I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>".
The problem is that using the GNU compilers,...
|
by: jinu1996 |
last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
|
by: tracyyun |
last post by:
Dear forum friends,
With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each...
|
by: agi2029 |
last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing,...
|
by: isladogs |
last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM).
In this session, we are pleased to welcome a new...
| |