使用eval()执行包含SimpleHTML的PHP 字符串

问题描述 投票:0回答:1

我正在尝试使用eval()执行一串SimpleHTML。我完全意识到eval()的危险,并且不会对要执行的字符串使用任何用户输入。

$my_data = str_get_html('<html><body><a href=\"https://www.example.com\">Hello!</a></body></html>');

$str = '$my_data->find(\'a\', 0)->attr[\'href\']';

eval ("\$str = \"$str\";");

echo $str;

上面的代码没有执行,在回显$ str之后,我得到了:

('a', 0)->attr['href']

$ str字符串的第一部分发生了什么(即$ my_data-> find)?如何实际执行$ str字符串中的代码?

php html dom eval simple-html-dom
1个回答
© www.soinside.com 2019 - 2024. All rights reserved.