ID: 8130 Updated by: sniper Reported By: [EMAIL PROTECTED] Status: Open Old-Bug Type: Arrays related Bug Type: Scripting Engine problem Assigned To: Comments: Previous Comments: --------------------------------------------------------------------------- [2000-12-07 02:28:51] [EMAIL PROTECTED] Is this the same as bug 6417? --------------------------------------------------------------------------- [2000-12-06 11:23:23] [EMAIL PROTECTED] OK, this only affects objects in the array whose methods have been accessed. Other objects are still copies. It also works on php-4.0.3pl1 on the Win32 platform. --------------------------------------------------------------------------- [2000-12-05 20:28:28] [EMAIL PROTECTED] A short script: <?php class test_class_2{ var $name; function distort_reality(){ echo("Method Called.<br>n"); return; } } $a[] = new test_class_2; $a[0]->name = 'Original'; echo('$b = $a<br>'."n"); $b = $a; echo("Original contains: {$a[0]->name}<br>n"); echo("Copy contains: {$b[0]->name}<br><p>n"); echo("Change contents for $b<br>n"); $b[0]->name = 'Copy'; echo("Original contains: {$a[0]->name}<br>n"); echo("Copy contains: {$b[0]->name}<br><p>n"); $a[0]->distort_reality(); echo('Once again, $b = $a<br>'."n"); $b = $a; echo("Original contains: {$a[0]->name}<br>n"); echo("Copy contains: {$b[0]->name}<br><p>n"); echo("Change contents for $b<br>n"); $b[0]->name = 'Copy'; echo("Original contains: {$a[0]->name}<br>n"); echo("Copy contains: {$b[0]->name}<br>n"); ?> The output from the script: $b = $a Original contains: Original Copy contains: Original Change contents for $b Original contains: Original Copy contains: Copy Method Called. Once again, $b = $a Original contains: Original Copy contains: Original Change contents for $b Original contains: Copy Copy contains: Copy Basically, if $a is an array of objects and any method of an object is called any subsequent copy of $a becomes linked to the original. Any change to the copy propagates through to the original. Configure line: './configure' '--with-config-file-path=/usr/local/stronghold/conf' '--with-apxs=/usr/local/stronghold/bin/apxs' '--enable-versioning' '--disable-debug' '--with-zlib' '--with-gd=/usr/local' '--with-gdbm' '--with-db2' '--with-mysql' '--with-xml' '--with-ldap' '--with-cpdflib=/usr/local' '--with-png-dir=/usr' '--with-jpeg-dir=/usr' '--with-tiff-dir=/usr' '--with-xpm-dir=/usr/X11R6' '--enable-sysvshm=yes' '--enable-sysvsem=yes' '--enable-track-vars=yes' '--enable-bcmath=yes' '--enable-memory-limit=yes' Running as a module under apache 1.3.14 --------------------------------------------------------------------------- Full Bug description available at: http://bugs.php.net/?id=8130 -- PHP Development Mailing List <http://www.php.net/> To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] To contact the list administrators, e-mail: [EMAIL PROTECTED]