草庐IT

php - 如何使用 Simple HTML Dom Parser 处理页面抓取错误

与Facebook类似,我正在构建一个允许用户发布链接的应用。用户在输入字段中填写链接,Controller返回TitleLinkMetadescriptionImages(asthumbnails)到View。Controller代码如下:$url=$this->input->post('posts_link');if(!empty($url)){$html=file_get_html($url);foreach($html->find('img')as$element){$src="";$src=$element->src;if(preg_match("/\.jp[e]?g$/i"

php - 将标记解析为元素树

我需要在PHP中将与XML或JSON不同的标记解析为元素树。我敢肯定存在用于执行此类操作的库,但我这辈子都找不到任何库。问题是这不是XML或JSON;它是一些晦涩的标记,不存在专门的解析器。因此,我正在寻找一个通用的解析器,它可以以元素树的形式实现任何标记。或者,关于如何写一篇文章。我以前写过一个递归解析器,但我不确定如何制作一个通用的、可重用的解析器。 最佳答案 你可以试试这个:http://pear.php.net/package/PHP_ParserGenerator有了这个:http://pear.php.net/packa

php - 在 MacOS Sierra 10.12.1 上安装/卸载 Apache2

我不知道我的Mac附带了Apache2.4,也没有检查我在哪个操作系统上运行,我按照本指南使用Homebrew在我的机器上获取Apache/MySQL/PHP:https://echo.co/blog/os-x-109-local-development-environment-apache-php-and-mysql-homebrew这导致我在我的机器上运行了两个版本的Apache2:2.2和2.4。当在终端中询问哪个apache正在运行时,答案是2.4,但是当试图在我的虚拟主机上打开我的程序实例时,我无法访问该页面。之后发生的事情很困惑,因为我让其他人在努力解决它,他们更改并移动了

php - 如何通过 simplehtmldom 解析位于标签外部(标签之间)的文本片段?

我正在使用simplehtmldom解析html,我被困在解析位于任何标签之外(但在两个不同标签之间)的纯文本:Аdress:7HangeRoadPhone:415641587484Contact:AlexMeetingTime:12:00-13:00是否可以获取地址、电话、联系人、session时间这些值?我想知道是否有机会将CSS选择器传递给nextSibling/previousSibling函数...foreach($html->find('div.text_small')as$div_descr){foreach($div_descr->find('b')as$b){if($

php - 在 PHP 中解决一个数学问题/表达式,它是一个字符串

用户可以输入数学问题(表达式),如5+654、6^24、2!、sqrt(543)、log(54)、sin5、sin(50)。经过一些重新格式化(例如,将sin5更改为sin(5))并进行评估后,PHP给出了正确的结果:$problem="5+5324";eval("$result=".$problem);echo$problem."=".$result;但是,这是很不安全的:/*Ifyoureadthis,please,plzdon'tbestupidandDONOTEXECUTEthiscode!!!!!*/$problem="shell_exec('rm-rf/')";eval("

PHP EDI X12 解析

我有一个项目要在现有的类似电子商务的网站中实现EDI解决方案。只涉及三个EDI文件,只有一个公司可以传输文件。他们严格定义了X12文档,并将负责对FTP站点的所有GET/PUT。这三个文件是InventoryAdvice(入站)、ShipmentNotification(入站)和Invoice(出站)。我们不想/不需要实现成熟的EDI管理解决方案。我的问题是,我是否疯狂地认为这是一个使用PHP的相对简单的解析任务?有谁知道任何可能有用的现有PHP库(可能是X12到XML)?我的搜索结果是空的。如果这是一个现实的目标并且没有其他可用资源,我想立即开始自己的工作。

php - 如果还没有空格,如何在子字符串周围添加空格?

示例输入字符串:test:)test:)test:):)test:ptest想要的输出字符串:test:)test:)test:):)test:ptest如您在上面的示例中所见,我想解析字符串并生成一个输出字符串,其中在所有预定义的笑脸代码周围添加了空格。我试图用几个循环来做到这一点,但最终它并没有像预期的那样100%工作,而且在处理大文档时速度非常慢。所以我想知道用PHP进行这种解析的最佳和最有效的方法是什么? 最佳答案 嵌套替换:preg_replace("/\s\s+/","",str_replace(Array(":)","

PHP parse_ini_file 相对路径?

我有这个代码:$test=parse_ini_file("../data/test.ini");test.ini位于后一个目录,然后转到数据文件夹。但我遇到的问题是parse_ini_file不喜欢我建立文件的相对链接,任何人都可以帮助我在不建立文件绝对链接的情况下做到这一点吗? 最佳答案 你可以试试这个:$test=parse_ini_file(realpath("../data/test.ini"));参见this链接或者你可以直接使用绝对路径。 关于PHPparse_ini_fil

php正则表达式和汉字

我正在尝试提取日期“25/01/2005”、公司名称“AOneInvestmentCompanyLimited大一投资有限公司”、中文名称“大一投资有限公司”和许可证号“来自此字符串的ABG896":名称:AOneInvestmentCompanyLimited大一投资有限公司(ABG896)牌照日期:25/01/2005备注但是我不知道如何将包括中文符号在内的所有数据提取到一个数组中。 最佳答案 如果你的字符串编码为utf-8,设置/u模式并使用\p{L}来匹配unicode字母或者使用\X作为.的替代品。请注意\X匹配换行符,而

PHP CSS 解析器 - 字符串的选择器声明

我希望能够读取CSS文件,并能够将给定选择器的所有声明提取到字符串中。例如,给定以下样式表:h1{font-size:15px;font-weight:bold;font-style:italic;font-family:Verdana,Arial,Helvetica,sans-serif;}div.item{font-size:12px;border:1pxsolid#EEE;}我希望能够调用并获取div.item,类似于:$css->getSelector('div.item');这应该给我一个像这样的字符串:font-size:12px;border:1pxsolid#EEE;我