проанализировать фрагмент кода php как строку, чтобы получить значение конкретной переменной - PullRequest
0 голосов
/ 20 декабря 2011

В моей базе данных есть поле varchar, которое содержит:

 "<?php     
     $html = 'abc' ;    
     $ad_content = Agencies_anonymous::getAd($html);    
     echo $ad_content;
  ?>"

Теперь в моем коде мне нужно прочитать значение этого поля и получить значение переменной $ html

. Каков был бы подходящий способ сделать это?

Возможно, я извлек значение поля в виде строки (* $ html_string *) в своем коде.

Каким будет подходящее регулярное выражение, к которому я должен обратиться? Или есть ли надежный метод с использованием строковых функций?

Ответы [ 3 ]

2 голосов
/ 20 декабря 2011

В моей базе данных есть поле varchar, которое содержит:

Лучшее, что вы можете сделать, это не иметь такого поля varchar без такого содержимого.

Держите свой код отдельно от данных, и вы избежите множества ошибок и бедствий.

0 голосов
/ 20 декабря 2011

Вы используете php для этого?Всегда ли утверждение выглядит именно так?

$code.split("'")[1] 

получит его или

$codeSegs = $code.split(' ');
foreach($i = 0; $i <  $codeSegs.length; $i++)
 if ($codeSegs[$i] == "$html")
   return $codeSeg[$i+2].split("'")[1];
0 голосов
/ 20 декабря 2011

Если вы хотите интерпретировать код php из кода php, вы должны использовать функцию eval () . Javascript также имеет нечто подобное.

$var = "
    $html = 'abc' ;    
    $ad_content = Agencies_anonymous::getAd($html);    
    echo $ad_content;
"

eval($var);
// $html should now be 'in-scope' for usage...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...