array_diff с параметром $GLOBALS нешутейно колбасят

camka

не самка
array_diff с параметром $GLOBALS нешутейно колбасят

PHP:
<?php
$zz = $GLOBALS;
$gg = 'afad';
array_diff_assoc($GLOBALS, $zz);
echo $gg; // как!? $gg - стал массивом, да еще и кривым
var_dump($gg); // а это вообще валит апач иногда
?>
 

camka

не самка
замечено как на win так и на linux. версии пхп 4.3.7 и 4.3.8 - другие не проверял. причем интересно, что поведение зависит и от того, подключен ли оптимайзер. однако, ошибка присутствует как с ним, так и без него.
на баг.пхп.нет искал - не нашел.
бэктрэйс - первый раз слышу.
 

tony2001

TeaM PHPClub
>бэктрэйс - первый раз слышу.
http://bugs.php.net/bugs-generating-backtrace.php

>замечено как на win так и на linux. версии пхп 4.3.7 и 4.3.8 - другие не проверял.
PHP5 & PHP4 с CVS - делает unset() всем переменным (что логично, ибо GLOBALS - это массив ссылок на них).
никаких падений.

-~{}~ 19.07.04 19:13:

попробуй последние снэпшоты для начала.
 

camka

не самка
можно еще раз объяснить, где и кто делает unset
спасибо
 

tony2001

TeaM PHPClub
array_diff_assoc()
я хочу сказать, что исчезновение $gg вполне логично, т.к. исчезает $GLOBALS, а ЭТО уже плохо.
 

camka

не самка
с последним снэпшотом те же глюки. при включеном оптимайзере последний вар_дамп убивает апач.

-~{}~ 28.07.04 16:46:

зарепортил баг. а там молчание. может быть тони может прокоментировать. может быть это вовсе и не баг?

http://bugs.php.net/bug.php?id=29253
 
Сверху