我希望你能帮助我。 我正在使用简单的html dom构建一个scrape脚本。
我有几个网站,我需要获取缩略图路径,电影名称和其他一些东西。我已经构建了一个管理面板,我以纯文本格式保存了根据匹配模式查找内容所需的方法。
例如
$movie_name = $result->children(0)->children(0)->innertext;
这就像它应该工作一样,但当我在数据库中保存子(0) - > children(0) - > innertext然后返回变量时,例如,
$variable = "children(0)->children(0)->innertext";
$movie_name = $result->$variable;
它不起作用。
我很确定我对此非常不对,所以请给我一个提示,告诉我如何将这些方法保存在纯文本中然后再调用它们。
它必须以明文形式存储,因为dom经常变化,所以我将能够跟上它。
最好的问候。
答案 0 :(得分:0)
您正在寻找PHP answer功能:
$movie_name = $result->eval($variable);
话虽如此,请注意eval()
。
相反,我建议eval is evil。
希望这有帮助!
答案 1 :(得分:-1)
知道了,eval()就是答案。由于没有用户输入到eval(),因此在我的特定情况下它非常安全。只需要进行一些转义并在eval();
中声明包含方法的变量这段代码适合我。
$res_mov_url_e = eval("\$res_mov_url = \$result->$movie_url;");
无论如何,非常感谢你们!