![]() |
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]() ![]() ![]() |
|
Ant0ha |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 102 Регистрация: 25.3.2009 Репутация: 1 Всего: 2 |
Как мажно подключить в скрипт строку, а не файл?
То есть вместо include 'test.php'; Прописать что-то вроде include_string "<?php echo 'тест'; ?>"; |
|||
|
||||
Ant0ha |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 102 Регистрация: 25.3.2009 Репутация: 1 Всего: 2 |
Варианты с "переподвыподвертыванием" тоже подойдут =)
|
|||
|
||||
awers |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1465 Регистрация: 22.3.2006 Где: Россия, Таганрог Репутация: 21 Всего: 31 |
eval('...');
Добавлено через 9 минут и 13 секунд Помогло? |
|||
|
||||
Ant0ha |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 102 Регистрация: 25.3.2009 Репутация: 1 Всего: 2 |
То что нужно, спасибо.
|
|||
|
||||
nerezus |
|
|||
![]() Вселенский отказник ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3330 Регистрация: 15.6.2005 Репутация: 12 Всего: 43 |
99,9%, что твоя задача неверно поставлена.
И ты решаешь не то, что тебе нужно. |
|||
|
||||
Ant0ha |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 102 Регистрация: 25.3.2009 Репутация: 1 Всего: 2 |
Задача поставлена как нужно, сейчас проверил с eval() - не то... Мне нужно весь сценарий из файла прочитать в строку, внести изменения "на лету" и выполнить изменнный код из строки. Такое вообще возможно?
Это сообщение отредактировал(а) Ant0ha - 12.2.2010, 10:55 |
|||
|
||||
Ипатьев |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2232 Регистрация: 5.7.2009 Репутация: 28 Всего: 37 |
А можно поинтересоватьс, по каким критериям определяется, что "Задача поставлена как нужно"? Богатый опыт? Большая теоретическая подготовка?
|
|||
|
||||
Ant0ha |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 102 Регистрация: 25.3.2009 Репутация: 1 Всего: 2 |
А можно мы будем общаться по теме?
|
|||
|
||||
Ипатьев |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2232 Регистрация: 5.7.2009 Репутация: 28 Всего: 37 |
Можно.
Когда мы увидим в теме смысл. Пока мы видим вопрос мальчика из песочницы, который нашел крысиный яд, и хочет сделать из него пирожки. При этом мальчик мнит себя директором ресторана. Когда взрослые люди говорят ему бросить бяку, он просит общаться по теме. Для общения по теме дяденька рекомендует описать исходную задачу, для которой понадобилось столь замысловатое решение, а потом выслушать очевидный простой ответ, который применяется повсеместно, и прошел мимо мальчика только в силу его очень низкого кругозора Это сообщение отредактировал(а) Ипатьев - 12.2.2010, 11:17 |
|||
|
||||
Sentox |
|
|||
как то так ![]() ![]() Профиль Группа: Участник Сообщений: 392 Регистрация: 27.1.2009 Где: Зимбабве Репутация: 7 Всего: 7 |
Сохранить изменённую строку в temp_file.php и подключить его.
Это сообщение отредактировал(а) Sentox - 12.2.2010, 11:32 |
|||
|
||||
Ant0ha |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 102 Регистрация: 25.3.2009 Репутация: 1 Всего: 2 |
Ну, хорошо, "дяденька". Есть простой шаблонизатор, суть его заключается в замене "<?php echo " на "[*="; "<?php" на "[*"; "?>" на "*]"
То есть, чтобы в шаблоне не писать <?php echo $var; ?> прописать просто [*=$var*] (Что очень облегчает создание и восприятие шаблона). Сейчас шаблонизатор делает данную замену, сохраняет полученный код в файл, а затем уже подключает готовый код в сценарий и выполняет его. Я хочу обойти сохранение кода в кэш, заменить всё на лету и выполнить код из строки. Как вам такая постановка вопроса?) |
|||
|
||||
Sentox |
|
|||
как то так ![]() ![]() Профиль Группа: Участник Сообщений: 392 Регистрация: 27.1.2009 Где: Зимбабве Репутация: 7 Всего: 7 |
||||
|
||||
Ant0ha |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 102 Регистрация: 25.3.2009 Репутация: 1 Всего: 2 |
В результате: Parse error: syntax error, unexpected '<' in /opt/lampp/htdocs/soomer-dc/test.php(3) : eval()'d code on line 1 |
|||
|
||||
Sentox |
|
|||
как то так ![]() ![]() Профиль Группа: Участник Сообщений: 392 Регистрация: 27.1.2009 Где: Зимбабве Репутация: 7 Всего: 7 |
eval('<?php echo "test"; ?>');
При использовании eval() необходимо помнить о нескольких вещах. Запомните, что передаваемая строка обязана быть правильным кодом PHP, включая окончание операторов точкой с запятой, чтобы разборщик не отвалил на строке после eval(), и правильное escap-ирование в code_str. |
|||
|
||||
Ant0ha |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 102 Регистрация: 25.3.2009 Репутация: 1 Всего: 2 |
Да, это понятно, но код ругается на <?php, вот в чем проблема, т.е. code_str не должна содержать <?php, ?>, ей нужен просто код, как если бы он был между <?php и ?>. Поэтому eval и не подходит...
|
|||
|
||||
![]() ![]() ![]() |
Правила форума "PHP" | |
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |