Непонятный foreach
У меня скорее не проблема(с ней я справился), а непонятка с циклом foreach.
Вывод скрипта:
Цифра с рамблером заставляет задуматься. Могу только сказать что переменная с именем $search использовалась ранее в вычислениях(а какая разница то использовалась она или нет?).
при замене кода на такой:
или такой:
Все отлично работает.
Только что заметил, что когда делаем var_dump отображает: 'Rambler' => & - что означает амперсанд в данном случае?
Инициализация массива:
-~{}~ 21.08.09 10:46:
PHP Version 5.2.4, Vista SP1 32 bit.
У меня скорее не проблема(с ней я справился), а непонятка с циклом foreach.
PHP:
....// вычисления тут
var_dump($searches);
foreach($searches as $key => $search)
{
print $key.' '.$search['count'].'<br>';
}
PHP:
array
'Google' =>
array
0 => string 'www.google' (length=10)
1 => string 'q' (length=1)
'count' => int 69
'Yandex' =>
array
0 => string 'www.yandex' (length=10)
1 => string 'text' (length=4)
'count' => int 1
'Mail.ru' =>
array
0 => string 'go.mail' (length=7)
1 => string 'q' (length=1)
'count' => int 31
'Bing' =>
array
0 => string 'www.bing' (length=8)
1 => string 'q' (length=1)
'count' => int 3
'Rambler' => &
array
0 => string 'nova.rambler.ru' (length=15)
1 => string 'query' (length=5)
'count' => int 46
Google 69
Yandex 1
Mail.ru 31
Bing 3
Rambler 3
при замене кода на такой:
PHP:
foreach($searches as $key => &$search)
{
print $key.' '.$search['count'].'<br>';
}
PHP:
foreach($searches as $key => $search1)
{
print $key.' '.$search1['count'].'<br>';
}
Только что заметил, что когда делаем var_dump отображает: 'Rambler' => & - что означает амперсанд в данном случае?
Инициализация массива:
PHP:
$searches = array(
'Google' => array('www.google', 'q'),
'Yandex' => array('www.yandex', 'text'),
'Mail.ru' => array('go.mail', 'q'),
'Bing' => array('www.bing', 'q'),
'Rambler' => array('nova.rambler.ru', 'query')
);
PHP Version 5.2.4, Vista SP1 32 bit.
