有没有一种方法(环境)能同时执行php与javascript代码?
大家讲道理
大家讲道理 2017-04-10 15:44:53
[JavaScript讨论组]

处理网上爬得数据,需要进行很多的dom、字符串等相关的操作,如果用php通过正则表达式处理的话,正则写起来复杂且麻烦,很多时候还容易出错,通过ajax来操作的话,执行效率不好,而且感觉写起来不顺。如果能用jquery来处理的话会非常方便,对于dom操作,属性的替换、字符串的操作都很方便。如果有一个环境能同时解析html文档(html/javascript/css)和php代码就好了,不知道有没有呢?

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

全部回复(7)
天蓬老师

php和js混起来写啊

PHP中文网

可以用 Nodejs 解析 HTML,生成数据结构(JSON或XML),然后再用 PHP 来来处理后续的部分。

可以用 PHP 调用 Node 进程的方式,不过这样比较慢

另一种方式就 Node 和 PHP 同时运行,分别做自已的事情(任务队列)。任务不是一个个有序完成,而是 Node 处理成半成品之后,送到半成品库,再由 PHP 出库继续处理。

ringa_lee

http://m.blog.csdn.net/blog/xyzhaopeng_11109/6626340#

PHP中文网

你可以混合c,java,,dotnet,php,python,js,css,html,一起用,
没错,一起用,你没看错,没有逗你,

这个语言就是

aauto

http://bbs.aau.cn/

PHP中文网

楼主应该要找的是PHP的DOM操作库吧,可以试试simple_html_dom.php:
http://simplehtmldom.sourceforge.net/manual.htm
比如抓取PHP官网首页新闻:

<?php
require dirname(__FILE__).'/simple_html_dom.php';
$html = file_get_html('http://php.net/');
$news = array();
foreach($html->find('article.newsentry') as $article) {
    $item['time']    = trim($article->find('time',            0)->plaintext);
    $item['title']   = trim($article->find('h2.newstitle',    0)->plaintext);
    $item['content'] = trim($article->find('p.newscontent', 0)->plaintext);
    $news[] = $item;
}
print_r($news);

PHP类似的DOM操作库还有phpQuery和Ganon,也可以试试:
phpQuery - jQuery port to PHP
https://github.com/TobiaszCudnik/phpquery
Ganon - Fast (HTML DOM) parser written in PHP
https://github.com/Shemahmforash/Ganon

迷茫

nodejs完全可以代替PHP。

伊谢尔伦

爬数据,为什么非要用PHP?

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号