Ошибка PHP - foreach
Выдаёт ошибку:
Warning: Invalid argument supplied for foreach() in /.../index.php on line 114 Warning: Invalid argument supplied for foreach() in /.../index.php on line 114 Вот кусок кода:
function ParseCookie( $data ) {
$cookie = parseall( $data, 'Set-Cookie: ', ';' );
if( count( $cookie ) > 0 ) {
foreach( $cookie as $c ) {
list( $keyCookie, $valCoolie ) = explode( '=', $c, 2 );
$cookie[ $keyCookie ] = $valCoolie;
}
}
}
function getStrCookie() {
$strCookie = '';
foreach( $cookie as $keyCookie => $valCoolie ) {
$strCookie .= "{$keyCookie}={$valCoolie}; ";
}
$strCookie = substr( $strCookie, 0, strlen( $strCookie ) - 2 );
return $strCookie;
}
В данном случае это 13 строка, что может быть не так?? |
перевести описание ошибки, и погуглить что означает данная ошибка - религия не позволяет?!
отдебажить в конце-концов к моменту выполнения 13-й строки переменная $cookie не существует, а значит не является массивом а перебирать можно толь ко массивы |
Я переводил, просто раньше этот скрипт был классом php, щас порылся в изначальном коде и там была такая строка
var $cookie = array(); Ставлю её и снова выдаёт ошибку. |
В php var для объявления переменных не нужен. Да и вообще не нужен.
P.S. Но проблема не в этом. Читайте про локальные / глобальные переменные. |
потому что, все еще:
Цитата:
она позволяет вывести перменную. и вы сможете глянуть, массив она, или что. в данном случае она будет NULL, что в данной ситуации означает что она не объявлена. пожалуйста освойте основы дебага, и основы языка на котором пишете. Поверьте, мы все прошли через это, и прошли самостоятельно. именно так люди и достигают мастерства. |
| Часовой пояс GMT +3, время: 05:41. |