Ответов: 9 Просмотров: 426
|
проблемма состоит в том что сервер возвращает ошибку :
Invalid argument supplied for foreach()
собственно та часть программы которая ее выдает:
CODE ( htmlphp):
скопировать код в буфер обмена
$stringcolor = $Emodel['Gamma']; //$stringcolor - текстовая строка содержащая индексы цветов разделенные '-' $colorarray = explode('-',$stringcolor); // print_r($colorarray); - выводит 3 или 4 значения (проверено) // echo is_array($colorarray); - выводит 1 function ifcolor($num) { foreach($colorarray as $Countcolor) //сервер выдает ошибку { if ($num==$Countcolor ) {return 'checked';} } }
функция проверяет есть ли цветовой индекс в текстовой строке.
собственно функция вызывается в этом участке:
CODE ( htmlphp):
скопировать код в буфер обмена
$count = 1; do { Echo ifcolor($myrow1['Number']); // на самом деле тут выводится чекбокс но скрипт настолько перегружен кавычками что я его заменил простым эхо. }
скрипт должен вывести 2-4 слова 'checked' но выводится ошибка.
мануал по foreach почитал, пусть не полностью, но вкраце осведомлён по принципу работы данной структуры, ошибок в коде не вижу поэтому и обращаюсь за помощью к ГУРУ php.
самое странное для меня - это то что ошибка - "в foreach передается неверный аргумент",
но как написано выше echo is_array($colorarray); - выводит 1. и по всем признакам это массив, да и это не первый скрипт где я использую данную конструкцию.
переменная $Countcolor до foreach - неопределена.
где то закралась ошибка, есть предположение что из-за определения функции, т.к. это первая в моей практике. |