![]() |
|
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]()
|
|
| szz |
|
||||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1289 Регистрация: 31.5.2005 Где: Moscow, Jerusalem Репутация: 8 Всего: 33 |
Такая ситуация... Уже написано много кода, предполагающего, что он бежит в global scope, вот например, фрагмент из этого кода:
Вот. Писал я, писал - и написал кучу кода такого. А вот теперь понадобилось вставлять его внутри какой-то функции:
И все, я попал! $some_var теперь не глобальная, а локальная переменная функции include_some_file. Как решить, не переписывая включаемые файлы (кода действительно много). Причем эти файлы могут включать другие, а те в свою чередь третьи и тд. Согласен на любые грязные трюки, даже с evalом --------------------
|
||||||
|
|||||||
| Mal Hack |
|
|||
![]() Мудрый... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 9926 Регистрация: 15.2.2004 Репутация: 122 Всего: 261 |
Писать в $GLOBALS, но мне кажется, что архитектура скрипта не продумана.
|
|||
|
||||
| szz |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1289 Регистрация: 31.5.2005 Где: Moscow, Jerusalem Репутация: 8 Всего: 33 |
Я ж говорю, не переписывая всю эту кучу кода.
Конечно не продумана, вообще сделано очень грязно. Нету решений, да?.. блин, жалко... --------------------
|
|||
|
||||
| szz |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1289 Регистрация: 31.5.2005 Где: Moscow, Jerusalem Репутация: 8 Всего: 33 |
А что если я сделаю так:
1. Соберу скрипт в одну переменную-стринг (вставив вместо include-require-once содержимое вставляемых файлов - рекурсивно) 2. Сотру из этой строки все функции и классы (собрав их в другой переменной) 3. Заменю все переменные $var на $GLOBALS['var'] 4. Засуну фнкции-классы обратно где были. 5. Эвал! Прежде чем это сделать скажите, что я не учел в этой схеме. --------------------
|
|||
|
||||
![]()
|
| Правила форума "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. |