![]() |
|
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]()
|
|
| Simpliest |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 625 Регистрация: 1.9.2009 Репутация: 1 Всего: 3 |
Используя относительные пути (или правило их построения для модулей системы) Варианта собственно два. Или система говорит модулю, где и кто лежит. Или существуют правила формирования путей для модулей. Есть третий вариант - хардкодинг В противном случае никто не знает ничего Вообще-то да, лучше отдельный вариант. А универсальность реализуется легко. Собственно функционал выносишь в отдельный модуль. А к нему пишешь два интерфейса - консольный и веб. В зависимости от места применения используешь тот или иной интерфейс. |
|||
|
||||
| bars80080 |
|
||||
![]() прапор творюет ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 12022 Регистрация: 5.12.2007 Где: Königsberg Репутация: 71 Всего: 315 |
т.е. два разных варианта. фигово
мдя. собсна ручками при установке прописываем системе (одному главному скрипту) где она находится, а от неё строим все пути |
||||
|
|||||
| NewDima |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 922 Регистрация: 20.2.2006 Где: <?here?> Репутация: 10 Всего: 12 |
bars80080, возникло ощущение после твоих постов, что php-скрипт - некий червь, шныряющий по просторам интернета, и не знающий, ничего
|
|||
|
||||
| bars80080 |
|
|||
![]() прапор творюет ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 12022 Регистрация: 5.12.2007 Где: Königsberg Репутация: 71 Всего: 315 |
вот и у меня возникло такое ощущение, когда вдруг сказали, что переменные сервера вдруг могут оказаться недоступными
есть хоть что-то стабильное в этом мире? |
|||
|
||||
| IZ@TOP |
|
||||||
![]() Панда-бир! ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4795 Регистрация: 3.2.2003 Где: Бамбуковый лес Репутация: 44 Всего: 73 |
bars80080, собственно, про QUERY_STRING я ничего не говорил. От этой части не зависит работоспособность кода.
На вопрос - как быть, можно дать несколько советов. 1. Используйте конфиг для определения корня и при подключении его относительные пути. Этот вариант хорош, если вы не таскаете файлы постоянно из папки в папку, в которых подключается конфиг. /www/s.ru/config.php
/www/s.ru/htdocs/index.php
2. Пропишите в php.ini или стартовом/конфигурационном файле include_path как /www/sitename.ru. В таком случае, мы считаем, что любой инклуд из любого места будет происходить с учетом этого пути.
Или тоже самое при помощи ini_set. С Апачем и потерей DOCUMENT_ROOT можно столкнуться при особых обстоятельствах. Для конфигурирования кроновских скриптов идеологически верно, на мой взгляд, использовать отдельный конфиг. Вернее не так, у вас для проекта должна быть конфиграция разделена на общий конфиг (подключение к бд и т.п.) и конфигурации приложения (WEB, CLI режими, к примеру). Добавлено через 3 минуты и 35 секунд Есть прямые руки и еще раз прямые руки. Ну и хостинги с кривыми руками есть, а еще есть новые технологии, нестандартные задачи, PHP в FASTCGI режиме под Nginx'ом и забытые заголовки. Всякое бывает. -------------------- Один из розовых плюшевых-всадников апокалипсиса... очень злой... Семь кругов ада для новых элементов языка Мои разрозненные мысли |
||||||
|
|||||||
| Simpliest |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 625 Регистрация: 1.9.2009 Репутация: 1 Всего: 3 |
Хм, а тебя не смущает что работа с файлами и БД организовывается несколько по-разному? К тому же даже в случае cron есть вариант вызывать именно web вариант (выше уже говорили) cron wget "url-скрипта" Это сообщение отредактировал(а) Simpliest - 18.9.2009, 16:20 |
|||
|
||||
| IZ@TOP |
|
|||
![]() Панда-бир! ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4795 Регистрация: 3.2.2003 Где: Бамбуковый лес Репутация: 44 Всего: 73 |
-------------------- Один из розовых плюшевых-всадников апокалипсиса... очень злой... Семь кругов ада для новых элементов языка Мои разрозненные мысли |
|||
|
||||
| Simpliest |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 625 Регистрация: 1.9.2009 Репутация: 1 Всего: 3 |
Зато это пишется на целых 4ре минуты быстрее, чем CLI интерфейс к модулю |
|||
|
||||
| IZ@TOP |
|
|||
![]() Панда-бир! ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4795 Регистрация: 3.2.2003 Где: Бамбуковый лес Репутация: 44 Всего: 73 |
Simpliest, CLI-интерфейс к модулю пишется единожды, централизованный раннер. А wget особенно прекрасен когда я намертво запрещу исполнение PHP скрипта веб-сервером более 30 секунд. Про частные случае, кривые руки и глупых админов мы не говорим.
-------------------- Один из розовых плюшевых-всадников апокалипсиса... очень злой... Семь кругов ада для новых элементов языка Мои разрозненные мысли |
|||
|
||||
| bars80080 |
|
|||
![]() прапор творюет ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 12022 Регистрация: 5.12.2007 Где: Königsberg Репутация: 71 Всего: 315 |
ну, вообще-то это разные вещи. общаться с файлами напрямую или с неким интерфейсом а предложение: запустить скрипт - само по себе не несёт какой-то принадлежности, потому и вызывает отторжение, что для одной работы приходится иметь два разных стартера на это я могу ответить только новостью, что мы не пишем на машинных кодах, хотя были бы прямые руки... могу напомнить, что есть такая хрень, как perl, глядя на которую кто-то в своё время придумал php. вроде тоже самое, но удобство. да и сам пхп - суть надстройка над C теперь придётся писать надстройку над пхп, чтобы в разных ситуациях скрипт работал одинаково |
|||
|
||||
| Simpliest |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 625 Регистрация: 1.9.2009 Репутация: 1 Всего: 3 |
А Standalone и Web приложение это тоже разные вещи. Я не открою вам Америку, но большинство программистов десктоп-приложений не знают даже об MVC, просто потому что представление и логика у них в одном месте (это в вебе они заметно разделены) |
|||
|
||||
| bars80080 |
|
|||
![]() прапор творюет ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 12022 Регистрация: 5.12.2007 Где: Königsberg Репутация: 71 Всего: 315 |
||||
|
||||
| Simpliest |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 625 Регистрация: 1.9.2009 Репутация: 1 Всего: 3 |
Брр, кто-то из нас двух бредит. Формат запуск CLI-скрипта из командной строки и по cron абсолютно одинаков имя_скрипта.php параметр1 параметр2 Вы же хотите вызывать Веб-приложение из командной строки - что есть нонсенс (извращенные методы есть и уже обсуждались). Эдак вы докатитесь до требований сделать единый номер телефона для милиции и девочек по вызову. |
|||
|
||||
| bars80080 |
|
|||
![]() прапор творюет ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 12022 Регистрация: 5.12.2007 Где: Königsberg Репутация: 71 Всего: 315 |
послушайте, вы сейчас начинаете вгрызаться в какой-то инструментарий не видя сути дела. есть программа которая выполняется при запросе клиента, возникает резонный вопрос - запустить её автоматически, без участия человека. разработчик пишет приложение, которое делает это. всё отлично, всё понятно. одно только "но". он почему-то пишет механизм в котором часть системы не работает. это по определению кривой концепт, просто потому, что он не реализует поставленной цели - заменить человека. а вы говорите, что так и должно быть. причём здесь какие-то кли-шмли? |
|||
|
||||
| brother79 |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 471 Регистрация: 18.8.2009 Репутация: 2 Всего: 6 |
Это сообщение отредактировал(а) brother79 - 19.9.2009, 07:07 |
|||
|
||||
![]()
|
| Правила форума "PHP" | |
|
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |