За последние 24 часа нас посетили 18653 программиста и 1599 роботов. Сейчас ищут 995 программистов ...

if($blabla[0])

Тема в разделе "PHP для новичков", создана пользователем Колбася, 24 окт 2012.

  1. Колбася

    Колбася Активный пользователь

    С нами с:
    12 дек 2011
    Сообщения:
    722
    Симпатии:
    0
    Код (PHP):
    1. if($blabla[0]) 
    Объясните вот тут [0] что означает? что если в blabla ничего нет или оно равно 0 ?
     
  2. [vs]

    [vs] Суперстар
    Команда форума Модератор

    С нами с:
    27 сен 2007
    Сообщения:
    10.559
    Симпатии:
    632
    Если в $blabla[0] что-то есть, условие выполнится

    Добавлено спустя 28 секунд:
    0 это первый символ строки или элемент массива с ключом 0
     
  3. Gold Dragon

    Gold Dragon Активный пользователь

    С нами с:
    30 сен 2012
    Сообщения:
    306
    Симпатии:
    2
    Адрес:
    Тамбов
    ЕСЛИ первый элемент не равно null, 0, false ..... и т.п.
    это как? Если не существует, то будет ошибка
     
  4. Колбася

    Колбася Активный пользователь

    С нами с:
    12 дек 2011
    Сообщения:
    722
    Симпатии:
    0
    а если так написать?
    Код (PHP):
    1. if ($blabla){
    2. echo "yes";
    3. }else {
    4. echo "no";
    5. } 
    если есть бла бла то да если нет то но так тоже можно?
     
  5. Gold Dragon

    Gold Dragon Активный пользователь

    С нами с:
    30 сен 2012
    Сообщения:
    306
    Симпатии:
    2
    Адрес:
    Тамбов
    Код (PHP):
    1. if (isset($blabla[0]) and $blabla[0]){
    2.      echo "yes";
    3. }else {
    4.      echo "no";
    5. } 
    Добавлено спустя 25 секунд:
    А что вообще нужно то получить?
     
  6. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    $blabla это не тот же объект, что и $blabla[0]
     
  7. [vs]

    [vs] Суперстар
    Команда форума Модератор

    С нами с:
    27 сен 2007
    Сообщения:
    10.559
    Симпатии:
    632
    Код (Text):
    1. $blabla[1] = 'a';
    2. $if ($blabla) {
    3.     echo 'да';
    4. }
    5. if ($blabla[0]) {
    6.     echo 'да';
    7. } else {
    8.     echo 'нет';
    9. }
     
  8. Gold Dragon

    Gold Dragon Активный пользователь

    С нами с:
    30 сен 2012
    Сообщения:
    306
    Симпатии:
    2
    Адрес:
    Тамбов
    [vs], твой код выдаст ошибку. $blabla[0] несуществует
     
  9. Your

    Your Старожил

    С нами с:
    2 июл 2011
    Сообщения:
    4.074
    Симпатии:
    7
    нотис выдаст, а не ошибку.
     
  10. FIZy_

    FIZy_ Активный пользователь

    С нами с:
    11 окт 2012
    Сообщения:
    11
    Симпатии:
    0
    В коде ошибка. Перед if знак $ стоит. А без $ он выведет: данет
     
  11. Gold Dragon

    Gold Dragon Активный пользователь

    С нами с:
    30 сен 2012
    Сообщения:
    306
    Симпатии:
    2
    Адрес:
    Тамбов
    Ну да, нотис это не ошибка, это всего-лишь та фигня которая вылетает на сайте и очень не заметная и не видна.... А вообще, лучше заблокировать любой вывод предупреждений и забыть о "правильном коде"

    Нотис это тоже ошибка. Только ошибки бывают разные...
     
  12. Your

    Your Старожил

    С нами с:
    2 июл 2011
    Сообщения:
    4.074
    Симпатии:
    7
    Это предупреждение, о том, что переменная не была определена ранее.
    Или смещение или еще чего.
     
  13. artoodetoo

    artoodetoo Суперстар
    Команда форума Модератор

    С нами с:
    11 июн 2010
    Сообщения:
    11.131
    Симпатии:
    1.251
    Адрес:
    там-сям
    Х*ня в том, что на хостинге вывод нотисов выключен, как правило. Поэтому отсутствие переменной (когда она нужна) часто остается незамеченным. Ошибки накапливаются пока не случится катастрофа.
     
  14. Gold Dragon

    Gold Dragon Активный пользователь

    С нами с:
    30 сен 2012
    Сообщения:
    306
    Симпатии:
    2
    Адрес:
    Тамбов
    Ну если вы считаете что такую мелочь как предупреждение можно игнорировать, то конечно переубеждать не буду ))) Как говорится, у меня свои правила и я всегда определяю переменные, дабы "сюрпризов" не получить.
    А если к примеру, кто-то где-то вдруг уже определил эту переменную, а я в своей части кода полагаю что её ещё нет? что будет? =)

    ЗЫ
    о вообще слово "ошибка" имеет более широкое толкование. Просто есть критические, а есть не очень, типа нотисов..

    Добавлено спустя 3 минуты 54 секунды:
    как правило это 50%: или отключены или не отключены )))) и по этой причине я уже давно взял на себя настройку вывода ошибок, т.е. в своём коде что и когда выводить...
     
  15. FIZy_

    FIZy_ Активный пользователь

    С нами с:
    11 окт 2012
    Сообщения:
    11
    Симпатии:
    0
    Ошибки и нотисы в логе смотреть всеже нужно, а не на сайте выводить для посетителя)
     
  16. Gold Dragon

    Gold Dragon Активный пользователь

    С нами с:
    30 сен 2012
    Сообщения:
    306
    Симпатии:
    2
    Адрес:
    Тамбов
    это не решает проблему неконтролируемого существования переменной