sanantech
@sanantech
PHP/Java Developer

Почему while и foreach в PHP не получают целиком массив, созданный из строки через функцию explode?

Привет, друзья!
Образовалась такая проблемка:
$cats=explode(",",$app['app-extra-cats']);
reset($cats);
while (list(, $value) = each($cats)) { 
// ...
}

В общем, в explode заношу строку, из БД, состоящую из цифр, разделенных запятыми. Всего в данном конкретном случае - две цифры. Ни функция while в таком виде, которую видно выше, ни ее аналог в foreach, выполняющий тоже самое, а именно:
foreach ($cats as $value){}
не выводят больше, чем первую цифру. В чем может быть проблема? Подскажите пожалуйста.
UPD:
$app = @mysql_fetch_array($qas);
я до передачи в explode вывел строку через echo - все выводится целиком, все имеющиеся цифры.
  • Вопрос задан
  • 693 просмотра
Решения вопроса 2
thewind
@thewind
php программист, front / backend developer
$app = Array('app-extra-cats' => '1,2,3,4');
$cats = explode(",", $app['app-extra-cats']);  // Array(1, 2, 3, 4)
//reset($cats);   // зачем это тут?
foreach ($cats as $cat) {
echo $cat . '<br />';   // 1 // 2 // 3 // 4
}
Ответ написан
Stalker_RED
@Stalker_RED
Всё работает. codepad.org/70pqutTE

В вопросе неполные данные.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы