Я использую SensioLabs Insight, чтобы сохранить качество моих проектов над лучшими практиками использованного инструмента.Следует избегать логических операторов (использовать || вместо «или») sensiolabs insight
Эта линия предупреждение причина во время анализа SLInsight:
$handle = fopen($file, 'w') or die('Cannot open file: '.$file);
SensioLabs говорят:
Логические операторы следует избегать.
[...]
или оператор не имеет такой же приоритет, что и ||. Это может привести к неожиданному поведению, использованию || вместо.
Хорошо, но если я просто использую || вместо «или», как это:
$handle = fopen($file, 'w') || die('Cannot open file: '.$file);
я получаю классический No such file or directory
ERRO из fopen
терпят неудачу, вместо того, что я ожидал (умереть действие и вернуться сообщение).
Чтобы избежать этого, я использую это состояние, прежде чем сделать fopen
:
if(!file_exists($file)) {
throw $this->createNotFoundException('Le fichier '.$file.' n\'existe pas.');
}
$handle = fopen($file'.log', 'r');
Что такое хорошее использование «||» в переменной назначения для чего я хочу?
Спасибо заранее, чтобы просветить меня.