2015-03-05 2 views
-1

У меня есть строка, хранящаяся в базе данных, которую я втягиваю в массив, например, например, строка «$ foo», которую я пытаюсь сделать, это использовать эту строку как переменную php, которая будет интерпретироваться php, но я не могу понять это. Я попытался использовать eval, но я не мог заставить это работать в моем текущем коде и из того, что я читал eval(), слишком опасно для использования в живой среде.Как выполнить строку как код в PHP?

Вот пример моего кода

$result = $sql->query("SELECT * FROM newordersystem"); 
for ($set = array(); $row = $result->fetch_assoc(); $set[] = $row); 
foreach ($set as $item) { 

$item[PHPVARIABLE] = stripslashes($_POST[$item[INPUTIDNAME]]);} 

Последняя строка, где моя проблема заключается в том, что я хочу «$ пункт [PHPVARIABLE]», чтобы выполнить, как $ Foo, так что результат будет в конечном итоге $ foo = 1

Любая помощь или совет были бы оценены с благодарностью!

+2

'Eval()' является ответом. Это плохая идея. Какой результат вы получили, когда использовали его? – mkaatman

+1

Звучит как случай для переменных переменных: http://php.net/manual/en/language.variables.variable.php – Steve

+0

Я обертывал, eval вокруг только первой части перед =, я бы обернул eval () вокруг всей этой линии? – Klobleo

ответ

0

Странная архитектура, и я не получить 100% своей цели, но если вам нужно:

$item[$item[INPUTIDNAME]] = stripslashes($_POST[$item[INPUTIDNAME]]);}

или

${$item[PHPVARIABLE]} = stripslashes($_POST[$item[INPUTIDNAME]]);}

Смежные вопросы