|
|
|
| В процессе "парсинга" сайта создается файл с именем переменной для папок. пример:
$dir_book = "books";
$dir_bss = "heartdisease";
$dir_cardio = "cardiology";
$dir_gastro = "gastro";
$dir_gynecology = "gynaecology";
|
Далее идет обоработка этих данных и подключается этот сгенерированный файл.
Требуется узнать имя переменной...
Вопрос: каким образом можно "склеить" строку, чтобы потом из неё получилась переменная? Вот код:
...
// функция обхода всех папок, рекурсивно
$exp_dir = explode("/",$dir); // разрезаем строку с именем папок на части, и в $exp_dir[1] получаем имена папок:
// "bss", "cardio", "gastro", "gynecology "
|
Как потом создать переменную, чтобы она называлась что-то типа этого:
:) | |
|
|
|
|
|
|
|
для: Fix
(09.12.2008 в 13:21)
| | зачем так, думаю проше дудет ей присвоет новое имя,
а
будет выводить ошибку
можно вот так
$dir_exp_dir = "dir_".$exp_dir[1];
|
| |
|
|
|
|
|
|
|
для: Pon4ik
(09.12.2008 в 13:38)
| | Спасибо за ответ,
Это да, это получается... Данный код выводит просто имя:
А мне нужно, чтобы именно
были переменными и содержали значения
dir_book = "books";
dir_bss = "heartdisease";
|
| |
|
|
|
|
|
|
|
для: FiX
(09.12.2008 в 14:23)
| | eval(); | |
|
|
|
|
|
|
|
для: Гость
(09.12.2008 в 14:48)
| | :) а как использовать этот eval? Уже пробовал, не получается...
$dir_exp_dir = eval("\$dr = \"dir_".$exp_dir[1]."\";");
|
| |
|
|
|
|
|
|
|
для: Fix
(09.12.2008 в 13:21)
| | где вы тут видели рекурсию ?)))))))
...
$data = explode("/",$dir);имена папок:
// "bss", "cardio", "gastro", "gynecology "
eval("\$".$data[0]."_".$data[1]." = \$data[1];");
eval("\$".$data[0]."_".$data[2]." = \$data[2];");
eval("\$".$data[0]."_".$data[3]." = \$data[3];");
print $bss_cardio;
|
| |
|
|
|
|
|
|
|
для: Fix
(09.12.2008 в 13:21)
| | Во-первых,
${"dir_".$exp_dir[1]} = "...";
|
(могу ошибиться, ибо никогда этой ху#@ей ерундой не пользовался)
Во-вторых, пользуйтесь include, require... 0_0 | |
|
|
|
|
|
|
|
для: BinLaden
(09.12.2008 в 22:03)
| | Спасибо большое :) Понимаю, что это бред, тем не менее задача стояла...
Решил с помощью массивов. Работает :) | |
|
|
|