Почему возникает в php - Notice: Undefined offset: 3 in... ?

П
На сайте с 23.05.2007
Offline
33
63911

Насколько я знаю то это предупреждение, что элемент пустой... как от этого избавиться подскажите?

tops.in.ua (http://tops.in.ua) - Самые популярные новости
I
На сайте с 29.04.2006
Offline
135
#1

Вы обращаетес в массив к 3 элементу, который не существует)

tommy-gung
На сайте с 22.11.2006
Offline
287
#2

Пкшашт, не определена переменная. Как избавиться - проверять перед использованием

Здесь не могла быть ваша реклама
П
На сайте с 23.05.2007
Offline
33
#3

if ($be=="4") {$go=array($all[3]);}

Вот в такой строке.

Подскажите как сделать, чтоб это предупреждение не выводилось...может можно заменить пустой элемент на два пробела или что-то в этом роде...?

t0os
На сайте с 25.02.2008
Offline
81
#4

Пкшашт, оператор @ перед массивом Вам поможет ;)

t0os добавил 04.07.2008 в 00:53

if ($be=="4") {$go=array(@$all[3]);}

десять собак

П
На сайте с 23.05.2007
Offline
33
#5

Собаки рулят☝ большое спасибо

[Удален]
#6
Пкшашт:
Насколько я знаю то это предупреждение, что элемент пустой... как от этого избавиться подскажите?

угу - присвоить ему значение;)

narodd добавил 04.07.2008 в 00:59

упс - а собаки - еще верней -)

Алексей Барыкин
На сайте с 04.02.2008
Offline
272
#7
Пкшашт:
Собаки рулят☝ большое спасибо

Собаки не рулят, а приводят к хитро замаскированным багам.

Какой сакральный смысл присвоения переменной $go несуществующего значения массива?

[Удален]
#8
Алексей Барыкин:
Собаки не рулят, а приводят к хитро замаскированным багам.
Какой сакральный смысл присвоения переменной $go несуществующего значения массива?

какой вопрос - такой ответ;)

но вот именно go - что-то меня останвливает от неприсвоения значения

для $go я бы имел всегда заглушку;)

Rulin
На сайте с 16.01.2008
Offline
133
#9

с собаками лучьше не баловаться, собака это скорой верменная мера на случай отладки

лучше сразу писать правильный код

if ($be=='4') 

{
$go=array();

if (isset($all) and is_array($all) and isset($all[3]))
array_push($go,$all[3]);
}

хотя конструкцию

	if (isset($all) and is_array($all) and isset($all[3]))

можно упростить до

	if (isset($all[3]))

если уверен что переменная $all всегда существует, и является массивом

Bitcoin Debit Card

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий