- Автор темы
- #1
вообщем есть код
Этот код текст в котором имеем примерно следующее
t1 = 'foo';
t2 = {$t1} test
получаем из echo $t2 foo test,
НО У МЕНЯ ВЫЛАЗИЕТ ОШИБКА
Голова уже кипит, хотя уверен что проблемма легко решаема
PHP:
$Find = '\$[a-z_][a-z_0-9]*(?:\[(?:(?:\'[a-z_0-9]+\')|(?:"[a-z_0-9]+")|(?:[0-9]+))\])*';
$Replace = '';
foreach ($Vars as $Key => $Value)
{
$Value = str_replace("'", '\\\'', $Value);
if(preg_match("/$Find/i", '$' . $Key))
{
$Replace .= "\n$$Key = '$Value';";
}
}
$Func = create_function('$Arg', '' . $Replace . 'return eval("return $Arg[1];");');
$Values = preg_replace_callback("/\{($Find)\}/i", $Func, $Values);
Этот код текст в котором имеем примерно следующее
t1 = 'foo';
t2 = {$t1} test
получаем из echo $t2 foo test,
НО У МЕНЯ ВЫЛАЗИЕТ ОШИБКА
Код:
Parse error: syntax error, unexpected T_STRING in Z:\home\test\www\index.php(87) : runtime-created function on line 3
Warning: preg_replace_callback() [function.preg-replace-callback]: Requires argument 2, '', to be a valid callback in Z:\home\test\www\index.php on line 88
Parse error: syntax error, unexpected T_STRING in Z:\home\test\www\index.php(87) : runtime-created function on line 3
Warning: preg_replace_callback() [function.preg-replace-callback]: Requires argument 2, '', to be a valid callback in Z:\home\test\www\index.php on line 88
Голова уже кипит, хотя уверен что проблемма легко решаема