Правила     Закладки     Карма    Календарь    Журналы    Помощь    Поиск    PDA    Чат   
        СМС-ки
   
Пейджер выключен!
Страницы: (3) [1] 2 3  ( Перейти к первому непрочитанному сообщению )  
Фильтр авторов:    показать 
  скрыть
  Ответ в темуСоздание новой темыСоздание опроса

> if($secondary) - разумно или нет?
Strannik  
 ۩     Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 806
Пользователь №: 17108
На форуме: 16 лет, 7 дней
Карма: 1




Добрый день.
Встретил код:

$secondary = $matches[1];
if($secondary) {...}


я привык уже делать проверку
if($secondary != '') или if(!empty($secondary))
, так вот правильно ли делать
if($secondary) {...}
или лучше писать как и раньше?
PMICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
twin  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Глухой нуб
******

Профиль
Группа: Администратор
Почтальон группы
Сообщений: 17423
Пользователь №: 6543
На форуме: 16 лет, 5 месяцев, 16 дней
Карма: 327

Трезвый :
14 лет, 2 месяца, 26 дней


Технически это допустимо, но рассово неверно. При такой записи в переменной ожидается булев тип, а там чертиче. PHP прощает эти вольности, но лучше привыкать к хорошему.

Вот еще вариант:
if((bool)$secondary){...}


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

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
PMСайт пользователяICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
glock18  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Be prepared
******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 5199
Пользователь №: 17723
На форуме: 15 лет, 10 месяцев, 7 дней
Карма: 57




Это то же самое, что !empty() но без проверки на существование
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Игорь_Vasinsky  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Журнал
Группа: ★ЛжеЭксперт★
Завсегдатай форума
Сообщений: 26774
Пользователь №: 21350
На форуме: 15 лет, 5 дней
Карма: 756




glock18
запусти

if($secondary) {
echo '$secondary существует';
}
else
echo '$secondary не существует';


--------------------
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
PM
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
glock18  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Be prepared
******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 5199
Пользователь №: 17723
На форуме: 15 лет, 10 месяцев, 7 дней
Карма: 57




/facepalm
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Игорь_Vasinsky  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Журнал
Группа: ★ЛжеЭксперт★
Завсегдатай форума
Сообщений: 26774
Пользователь №: 21350
На форуме: 15 лет, 5 дней
Карма: 756




а чё так?

только эти 5 строчек в коде.


--------------------
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
PM
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
twin  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Глухой нуб
******

Профиль
Группа: Администратор
Почтальон группы
Сообщений: 17423
Пользователь №: 6543
На форуме: 16 лет, 5 месяцев, 16 дней
Карма: 327

Трезвый :
14 лет, 2 месяца, 26 дней


error_reporting(0)???


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

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
PMСайт пользователяICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
HErATuB  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Пыхепышник
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 449
Пользователь №: 32172
На форуме: 12 лет, 11 месяцев, 1 день
Карма: 22




"if(empty($secondary))" == "if($secondary) "
они аналогичны.
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Игорь_Vasinsky  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Журнал
Группа: ★ЛжеЭксперт★
Завсегдатай форума
Сообщений: 26774
Пользователь №: 21350
На форуме: 15 лет, 5 дней
Карма: 756




Цитата
error_reporting(0)???

обязательно, я же говорил уже.


--------------------
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
PM
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
glock18  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Be prepared
******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 5199
Пользователь №: 17723
На форуме: 15 лет, 10 месяцев, 7 дней
Карма: 57




Цитата (HErATuB @ 16.08.2013 - 07:30)
"if(empty($secondary))" == "if($secondary) "
они аналогичны.

Неправда.

2Игорь:
попробуй перечитать мое первое сообщение. Оно кажется мне несложным, и совершенно непонятно как понимание моего сообщения могло сподвигнуть тебя сделать такой комментарий
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
HErATuB  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Пыхепышник
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 449
Пользователь №: 32172
На форуме: 12 лет, 11 месяцев, 1 день
Карма: 22




glock18 Проверь)
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
glock18  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Be prepared
******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 5199
Пользователь №: 17723
На форуме: 15 лет, 10 месяцев, 7 дней
Карма: 57




Цитата (Игорь_Vasinsky @ 16.08.2013 - 07:34)
Цитата
error_reporting(0)???

обязательно, я же говорил уже.

huh.gif laugh.gif
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Valick  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 6460
Пользователь №: 35718
На форуме: 12 лет, 4 месяца
Карма: 208




Цитата
обязательно, я же говорил уже.

говнокодить как раз не обязательно smile.gif


--------------------
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
HErATuB  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Пыхепышник
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 449
Пользователь №: 32172
На форуме: 12 лет, 11 месяцев, 1 день
Карма: 22




Цитата

empty — Проверяет, пуста ли переменная

    "" (пустая строка) - СРАБОТАЕТ
    0 (целое число) - СРАБОТАЕТ
    0.0 (дробное число) - СРАБОТАЕТ
    "0" (строка) - СРАБОТАЕТ
    NULL - СРАБОТАЕТ
    FALSE - СРАБОТАЕ
    array() (пустой массив) - Не помню)
    var $var; (переменная объявлена, но не имеет значения в классе) - СРАБОТАЕТ
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
glock18  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Be prepared
******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 5199
Пользователь №: 17723
На форуме: 15 лет, 10 месяцев, 7 дней
Карма: 57




Цитата (HErATuB @ 16.08.2013 - 07:37)
glock18 Проверь)

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

1. empty($secondary)
ок, здесь наиболее вероятна опечатка - отсутствие отрицания
вернет true если переменная пуста или не определена

2. $secondary
$secondary будет true если переменная не имеет одно из значений упомянутых здесь же: http://php.net/manual/en/function.empty.php

породит ошибку при неопределенной переменной

3. !empty($secondary)
почти то же самое, что 2, но не порождает ошибку.

За использование 2го варианта в ситуации, когда существование переменной под вопросом, я лично оторвал бы программисту руки.
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
  Быстрый ответ
Информация о Госте
Введите Ваше имя
Кнопки кодов
Для вставки цитаты, выделите нужный текст и
НАЖМИТЕ СЮДА
Введите сообщение
Смайлики
:huh:  :o  ;) 
:P  :D  :lol: 
B)  :rolleyes:  <_< 
:)  :angry:  :( 
:unsure:  :blink:  :ph34r: 
     
Показать всё

Опции сообщения  Включить смайлики?
 Включить подпись?
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:

Опции темыСтраницы: (3) [1] 2 3  Ответ в темуСоздание новой темыСоздание опроса