2016-10-17 10 views
-2

Простой и простой, как и в заголовке: - Есть ли способ программно объявить глобальные функции внутри функции в PHP? Например, из массива строк (которые являются именами глобальных переменных)Программно объявить глобальные переменные в PHP

+0

Может быть, вы ищете этот ответ HTTP : //stackoverflow.com/a/7769995/5788489 –

+3

Возможный дубликат [Как объявить глобальную переменную в php?] (http://stackoverflow.com/questions/13530465/how-to-declare-a-global- variable-in-php) – akshay

+0

Ребята Я знаю, как объявить глобальную переменную, и это не то, о чем я прошу, дИТ – Pez

ответ

1

Да, если вы добавляете переменные в массив $GLOBALS, они затем доступны по всему миру, как и любой другой глобальный.

function add_globals($arr) 
{ 
    foreach ($arr as $idx => $name) { 
     $GLOBALS[$name] = $idx; 
    } 
} 

$names = array('aa','bb'); 
add_globals($names); 
echo $aa.PHP_EOL; 
echo $bb.PHP_EOL; 

РЕЗУЛЬТАТ

0 
1 

Я просто с помощью индекса массива $ имен в качестве значения для каждого нового глобального, вы могли бы использовать что-нибудь