|
В чем отличие между __FILE__.'/engine/путь' и ''./engine/путь' ?
|
|||
---|---|---|---|
#18+
В чем отличие между __FILE__.'/engine/путь' и ''./engine/путь' ? Юзаю DLE движок на PHPStorm. В родном движке код написан через константу ROOT которя принимает значение __FILE__. Неудобство в том, что редактор не предлогает переход на нужн_й require. Я нашел как 3то исправить, но для себя хочу понять ... |
|||
:
Нравится:
Не нравится:
|
|||
25.02.2019, 02:09 |
|
В чем отличие между __FILE__.'/engine/путь' и ''./engine/путь' ?
|
|||
---|---|---|---|
#18+
Андрей159В чем отличие между __FILE__.'/engine/путь' и ''./engine/путь' ?В первом случае ерунда какая-то написана. Возможно, там в реальности __DIR__ используется, а не __FILE__. Если так, то в первом случае путь будет абсолютным, а во втором относительным. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.02.2019, 02:52 |
|
В чем отличие между __FILE__.'/engine/путь' и ''./engine/путь' ?
|
|||
---|---|---|---|
#18+
сори...я не правильно условие написал Код: php 1. 2.
дальше например Код: php 1.
я могу сделать так Код: php 1.
почему-то решили через ENGINE_DIR делать. хотел понять 3тот момент ... |
|||
:
Нравится:
Не нравится:
|
|||
25.02.2019, 02:58 |
|
В чем отличие между __FILE__.'/engine/путь' и ''./engine/путь' ?
|
|||
---|---|---|---|
#18+
Может пути на серверах в разн_х хостеров разн_е и такой способ наиболее универсален ... |
|||
:
Нравится:
Не нравится:
|
|||
25.02.2019, 03:02 |
|
В чем отличие между __FILE__.'/engine/путь' и ''./engine/путь' ?
|
|||
---|---|---|---|
#18+
Прочтите начало документации http://php.net/manual/ru/function.include.php по include, там подробно сказано, как работает конструкция при использовании абсолютного и относительного путей. Принципы работы отличаются. Абсолютный путь однозначно показывает на подключаемый файл, при указании относительного пути однозначности нет. Почему используется именно константа (а не переменная или __DIR__ или что-то ещё) - это вопрос к автору движка. Наверно, автор имел какие-то основания именно для такого решения. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.02.2019, 03:13 |
|
В чем отличие между __FILE__.'/engine/путь' и ''./engine/путь' ?
|
|||
---|---|---|---|
#18+
vkle, http://php.net/manual/ru/language.constants.predefined.php Код: php 1. 2.
Поэтому чтобы иметь полный путь корневого каталога сайта и объявлена глобальная константа. Код: php 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
Так понятнее? ... |
|||
:
Нравится:
Не нравится:
|
|||
25.02.2019, 10:11 |
|
В чем отличие между __FILE__.'/engine/путь' и ''./engine/путь' ?
|
|||
---|---|---|---|
#18+
Руслан Дамирович, Понятнее, чем... что? ... |
|||
:
Нравится:
Не нравится:
|
|||
25.02.2019, 10:42 |
|
В чем отличие между __FILE__.'/engine/путь' и ''./engine/путь' ?
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
25.02.2019, 10:54 |
|
В чем отличие между __FILE__.'/engine/путь' и ''./engine/путь' ?
|
|||
---|---|---|---|
#18+
Hett, ты серьезно? он же написал авторЮзаю DLE движок ... |
|||
:
Нравится:
Не нравится:
|
|||
25.02.2019, 11:23 |
|
В чем отличие между __FILE__.'/engine/путь' и ''./engine/путь' ?
|
|||
---|---|---|---|
#18+
vkleРуслан Дамирович, Понятнее, чем... что? Прошу прощения. Не вам оно было адресовано, а ТСу, на его вопрос дальше например Код: php 1.
я могу сделать так Код: php 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
25.02.2019, 15:32 |
|
В чем отличие между __FILE__.'/engine/путь' и ''./engine/путь' ?
|
|||
---|---|---|---|
#18+
Руслан Дамирович, Ага, понял. Наверно, было бы не лишним дополнить что при выполнении кода конструкция с константойАндрей159 Код: php 1.
развертывается после конкатенации в нечто вроде Код: php 1.
, что в общем случае не эквивалентно варианту ТС с относительным путемАндрей159я могу сделать так Код: php 1.
Однако, в частном случае, когда текущей является директория '/home/username/sitename/public_html' из примера, эта конструкция практически идентична той, что с константой. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.02.2019, 18:11 |
|
В чем отличие между __FILE__.'/engine/путь' и ''./engine/путь' ?
|
|||
---|---|---|---|
#18+
Через несколько дней обнаружилась проблема. Всетаки не одно и тоже. CRON запускает без параметров и задал путь не из корня. И все горит ошибками. А если дать ENGINE_DIR . '/modules/....' то все работает. Просто неудобно что редактор не подсвечивает пути и нет возможности перейти по ссилке. Иногда догадuвается ... |
|||
:
Нравится:
Не нравится:
|
|||
28.02.2019, 04:05 |
|
В чем отличие между __FILE__.'/engine/путь' и ''./engine/путь' ?
|
|||
---|---|---|---|
#18+
Андрей159Всетаки не одно и тоже.Изначально не было очевидным, что отличный от исходного код, работающий по другим принципам, не является тем же самым, что и исходный? ;-) Андрей159И все горит ошибками. А если дать ENGINE_DIR . '/modules/....' то все работает.Так сдались, чтоль? Зря! Можно и дальше пойти в этом направлении - изменить include_path (по крайней мере, для крона), чтобы PHP искал файлы ещё и в других местах. Конечно, без гарантии, что не вылезет какая-то другая ошибка. :-( Андрей159Просто неудобно что редактор не подсвечивает пути и нет возможности перейти по ссилке.Так напишите фичреквест, может авторы и реализуют желаемое в будущих версиях редактора. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.02.2019, 06:17 |
|
|
start [/forum/topic.php?fid=23&fpage=16&tid=1459984]: |
0ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
30ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
56ms |
get tp. blocked users: |
2ms |
others: | 14ms |
total: | 151ms |
0 / 0 |