powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / не срабатывает сравнение
13 сообщений из 13, страница 1 из 1
не срабатывает сравнение
    #39493555
CTYDEHT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
подскажите почему не срабатывает такое условие

Код: php
1.
if ($handle2 = opendir("novels/".$entry.'/') && ($entry!='.') && ($entry!='..')) {



а вот такое срабатывает

Код: php
1.
if ($handle2 = opendir("novels/".$entry.'/') AND ($entry!='.') AND ($entry!='..')) {



операторы && и AND ведь должны одинаково обрабатываться.
...
Рейтинг: 0 / 0
не срабатывает сравнение
    #39493565
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CTYDEHTоператоры && и AND ведь должны одинаково обрабатываться.
не должны, приоритеты разные
http://php.net/manual/ru/language.operators.precedence.php
...
Рейтинг: 0 / 0
не срабатывает сравнение
    #39493751
CTYDEHT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Изопропил, Спасибо.

Не думал даже про приоритет. оператор то "И" используется. Логика немного странная.
...
Рейтинг: 0 / 0
не срабатывает сравнение
    #39493754
Фотография Hett
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мне более странной ваша логика кажется.
Тут явно нужно проверку entity сначала делать, а потом уже opendir.
Да и closedir вы как вызываете? Еще одну проверку делаете, что там ресурс?
...
Рейтинг: 0 / 0
не срабатывает сравнение
    #39493772
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
$handle2 ==
Нет?
...
Рейтинг: 0 / 0
не срабатывает сравнение
    #39493773
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пардон, фигню сморозил. Понял, когда уже отпостил.
...
Рейтинг: 0 / 0
не срабатывает сравнение
    #39493796
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
HettТут явно нужно проверку entity сначала делать, а потом уже opendir.По хорошему, ранее ещё проверка is_dir() должна быть.
...
Рейтинг: 0 / 0
не срабатывает сравнение
    #39494643
CTYDEHT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
HettМне более странной ваша логика кажется.
Тут явно нужно проверку entity сначала делать, а потом уже opendir.
Да и closedir вы как вызываете? Еще одну проверку делаете, что там ресурс?

Hett а почему нельзя все сразу сделать если это работает?

Если я тут проверку делаю,
Код: php
1.
if ($handle2 = opendir("novels/".$entry.'/')


тогда зачем мне на closedir делать ее, если я точно знаю что документ открылся?


-------------------------------------------------------------

vkleПо хорошему, ранее ещё проверка is_dir() должна быть.

а зачем, если мы можно сказать ее делаем вот тут
Код: php
1.
 if ($handle2 = opendir("novels/".$entry.'/')
...
Рейтинг: 0 / 0
не срабатывает сравнение
    #39494811
Фотография Hett
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да не зачем, не надо тебе это, забей
...
Рейтинг: 0 / 0
не срабатывает сравнение
    #39494823
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CTYDEHTа зачем


Мда... Иногда проще купить сервер помощнее (и подороже), чем найти толкового программиста.
...
Рейтинг: 0 / 0
не срабатывает сравнение
    #39494871
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vkle...Иногда проще купить сервер помощнее (и подороже), чем найти толкового программиста.
Или клад найти, как говаривал Матроскин.
...
Рейтинг: 0 / 0
не срабатывает сравнение
    #39494992
CTYDEHT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нет чтобы ответить нормально, к чему это может привести, они клоунаду тут устроили.
...
Рейтинг: 0 / 0
не срабатывает сравнение
    #39495065
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CTYDEHTНет чтобы ответить нормально, к чему это может привести, они клоунаду тут устроили.Вы и не пытались спрашивать "к чему это может привести", Вы лишь утверждали, что "вот тут усё работает, зачем что-то ещё". В каком-то смысле Вы правы. Когда у проекта околонулевая посещаемость, то можно не заморачиваться ни с контролем над ресурсами, ни с оптимизацией алгоритмов и времени выполнения. Оно, действительно, "сойдет и так", ибо, скорее всего, никакой разницы не заметите. Вот когда посещаемость проекта приличная, а ресурсы сервера не резиновые - тогда подобного рода вещи вполне могут показать себя не с лучшей стороны.

Проанализируйте, что будет делать скрипт, если в $entry придут последовательно значения ".", ".." и имя существующего файла. Тогда увидите, что скрипт трижды попытается заставить сервер "пошкрябать головками жесткого диска" и один раз заставит PHP создать в памяти две структуры данных (ресурсы . и ..), выработать исключение (передано имя файла) и затем этим всем добром _не_ воспользуется. Это вкратце. До закрытия ресурсов не дошли ещё.

Hett указал Вам, что проверки следует делать раньше, но Вы же утверждать стали что "это работает". Да, работает, никто же с эти утверждением и не спорит. Разница только в том, _как_ оно работает. Вероятно, Вам не интересны детали. Вы о деталях не спрашивали - Вам никто и не отвечал. Так чего Вы обижаетесь то?
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / не срабатывает сравнение
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]