Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/251.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP-如何从变量调用方法_Php_Object_Methods - Fatal编程技术网

PHP-如何从变量调用方法

PHP-如何从变量调用方法,php,object,methods,Php,Object,Methods,我希望你能帮助我。 我正在使用简单的HTMLDOM构建一个scrap脚本 我有几个网站,我需要得到缩略图路径,电影名称和其他一些东西。我已经建立了一个管理面板,在那里我以明文形式保存了根据匹配模式查找这些内容所需的方法 例如 这就像它应该工作一样,但是当我在数据库中保存children(0)->children(0)->innertext,然后返回到变量中时,例如 $variable = "children(0)->children(0)->innertext"; $movie_na

我希望你能帮助我。 我正在使用简单的HTMLDOM构建一个scrap脚本

我有几个网站,我需要得到缩略图路径,电影名称和其他一些东西。我已经建立了一个管理面板,在那里我以明文形式保存了根据匹配模式查找这些内容所需的方法

例如

这就像它应该工作一样,但是当我在数据库中保存children(0)->children(0)->innertext,然后返回到变量中时,例如

$variable = "children(0)->children(0)->innertext";
$movie_name = $result->$variable;
它不起作用

我很确定我在这一点上犯了严重错误,所以请给我一个提示,我如何将这些方法保存为明文,然后调用它们

它必须以明文形式存储,因为dom经常变化,所以我将能够跟上它


致以最诚挚的问候。

您正在寻找PHP函数:

$movie_name = $result->eval($variable);
话虽如此,我还是要提醒你

相反,我建议

希望这有帮助

明白了,eval()就是答案。由于没有用户输入eval(),因此在我的特殊情况下,eval()非常安全。只需对eval()中包含方法的变量进行转义和声明

这段代码适合我

 $res_mov_url_e     = eval("\$res_mov_url = \$result->$movie_url;");

无论如何,非常感谢大家

您需要的是xpath,只是尝试评估它不起作用。XPath我真的不知道该怎么做,因为我知道将在哪里找到它的DOM子项编号,但不知道标记名。也许你能给我举个例子。谢谢
 $res_mov_url_e     = eval("\$res_mov_url = \$result->$movie_url;");