|
Программирование PHP, Perl, HTML, XHTML, CSS, JavaScript, MySQL и другие языки кодирования. |
|
Опции темы |
Сегодня | |||||
|
20.03.2016, 10:18 | #1 | |||
Реноме:
1551
|
in_array() expects parameter 2 to be array, null given
Функция заполнения массива $array_r случайными (уникальными) числами в диапазоне от $start до $end.
Вначале массиву $array_r присваивается значение массива $banners состоящего из нескольких элементов, нужно дописать недостающее количество элементов, - ещё 1-2 значения. PHP код:
При обычном вызове файла .php - всё работает без ошибок. А при включении через include выпадает ошибка: Warning: in_array() expects parameter 2 to be array, null given in /home/public_html/banner.php on line 128 PHP код:
__________________
Последний раз редактировалось Port_Artur; 20.03.2016 в 10:21. |
|||
20.03.2016, 23:55 | #2 | |||
Реноме:
1551
|
Массив $array_r первоначально не пустой, он всегда содержит один элемент:
Array ( [0] => 6 ) Тогда откуда ошибка?
__________________
|
|||
22.03.2016, 00:25 | #4 | |||
Реноме:
1551
|
Путь верный, иначе ошибку на 128 строку не выдавало бы.
__________________
|
|||
22.03.2016, 22:34 | #5 | |||
Реноме:
1551
|
Короче, избавился от функции и всё заработало.
__________________
|
|||
22.03.2016, 22:47 | #6 | |||
Тех. администратор
Реноме:
8693
|
Warning - не является серьезной ошибкой, в исключительных случаях, Вы можете поставить символ @ перед строкой, где появляется ошибка, и она исчезнет, но так надо делать только если понимаете, что обработчик не может иначе Ваш код интерпретировать - только с ошибкой, тогда надо ее скрыть. А так по существу ошибки, у Вас в массиве $array_r в какой-то момент появляются пустые/неправильные значения (в функции, в цикле и т.д.). И иногда бывает полезно определять переменные до начала функции или цикла, т.е. может помочь выше написать, что $array_r = чему-то там. А дальше переопределять, если надо.
|
|||
22.03.2016, 22:51 | #7 | |||
Реноме:
1551
|
Где-то прочитал что при объявлении переменной глобальной она типа может менять свои значения, да и вообще объявление переменной глобально это значит что не умеешь писать.
Внял, избавился от функции и необходимости глобальной переменной. Хотя, сейчас вот пока пишу, думаю, что её можно было просто предать в функцию в качестве параметра. Осенило блин. Но уже поздно. Как вариант на будущее.
__________________
|
|||
23.03.2016, 00:25 | #8 | |||
Тех. администратор
Реноме:
8693
|
Да ну, думаю, можно писать, это тоже удобства добавляет - знаешь какие функции работают ниже, какие излишние - это тоже обнаруживается, потом можно оптимизировать.
А так, конечно, функция большая, я так понимаю для случайного показа баннера, я бы сделал что-то попроще, правильно что убрали |
|||
Реклама | |
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1) | |
Опции темы | |
|
|