有没有好的PHP库可以将html / php文件转换为对象
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了有没有好的PHP库可以将html / php文件转换为对象,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1597字,纯文字阅读大概需要3分钟。
内容图文
![有没有好的PHP库可以将html / php文件转换为对象](/upload/InfoBanner/zyjiaocheng/784/69fad98d590f47818e0e48f5cf1e4ab2.jpg)
我看到很多可以解析html的php库.一个很好的例子是QueryPath模仿Jquery Api.
但是,我正在寻找分析phtml.因此,不仅图书馆擅长分析DOM,而且还善于分析php processing instructions.例如Php文档对象模型或PDOM.
像这样的文件:
<?php
require 'NameFinder.php';
$title = 'Wave Hello';
$name = getName();
?><html>
<head>
<title><?php echo $title ?></title>
</head>
<body>
<h1>Hello <?php echo $name ?></h1>
<p>Blah Blah Blah</p>
</body>
我希望能够使用这种php库来阅读以下内容:
>由xpath或css选择器找到的DOM节点的内部html.
以及可能提供的东西:
>脚本中调用的php函数/方法列表
> php变量的值
>该页面所需的页面
>第5行之前使用的php变量列表
>在body元素的1st para之前使用的php变量列表
我可以花一些时间来一些东西,从phpdocumentor和Zend Framework Reflection这样的东西借用代码,使用内置的DOM Api,内省和字符串操作等.
但是,如果有某种* phtmlQuery“库可以做这些事情,那么它将很方便.
解决方法:
要从文件中获取处理指令(和其他节点),可以使用DOM和XPath:
$dom = new DOMDocument;
$dom->loadHTMLFile('/path/to/your/file/or/url');
$xpath = new DOMXPath($dom);
foreach ($xpath->query('//processing-instruction()') as $pi) {
echo $dom->saveHTML($pi), PHP_EOL;
}
这将输出:
<?php require 'NameFinder.php';
$title = 'Wave Hello';
$name = getName();
?>
<?php echo $title ?>
<?php echo $name ?>
这将适用于破碎的HTML.您可以在以下位置找到其他库
> How do you parse and process HTML/XML in PHP?
获得处理指令后,您可以通过本机Tokenizer运行它们或尝试其中一些:
> https://github.com/Andrewsville/PHP-Token-Reflection
> https://github.com/manuelpichler/staticReflection
> https://github.com/nikic/PHP-Parser
那些不会神奇地为您提供开箱即用的信息,因此您可能需要自己编写一些额外的行.
内容总结
以上是互联网集市为您收集整理的有没有好的PHP库可以将html / php文件转换为对象全部内容,希望文章能够帮你解决有没有好的PHP库可以将html / php文件转换为对象所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。