PHP 采集程序 常用函数


Posted in PHP onDecember 18, 2008

当前的脚本网址
function get_php_url(){
if(!empty($_SERVER["REQUEST_URI"])){
$scriptName = $_SERVER["REQUEST_URI"];
$nowurl = $scriptName;
}else{
$scriptName = $_SERVER["PHP_SELF"];
if(empty($_SERVER["QUERY_STRING"])) $nowurl = $scriptName;
else $nowurl = $scriptName."?".$_SERVER["QUERY_STRING"];
}
return $nowurl;
}
//把全角数字转为半角数字
function GetAlabNum($fnum){
$nums = array("0","1","2","3","4","5","6","7","8","9");
$fnums = "0123456789";
for($i=0;$i<=9;$i++) $fnum = str_replace($nums[$i],$fnums[$i],$fnum);
$fnum = ereg_replace("[^0-9\.]|^0{1,}","",$fnum);
if($fnum=="") $fnum=0;
return $fnum;
}
//去除HTML标记
function Text2Html($txt){
$txt = str_replace(" "," ",$txt);
$txt = str_replace("<","<",$txt);
$txt = str_replace(">",">",$txt);
$txt = preg_replace("/[\r\n]{1,}/isU","<br/>\r\n",$txt);
return $txt;
}
//清除HTML标记
function ClearHtml($str){
$str = str_replace('<','<',$str);
$str = str_replace('>','>',$str);
return $str;
}
//相对路径转化成绝对路径
function relative_to_absolute($content, $feed_url) {
preg_match('/(http|https|ftp):\/\//', $feed_url, $protocol);
$server_url = preg_replace("/(http|https|ftp|news):\/\//", "", $feed_url);
$server_url = preg_replace("/\/.*/", "", $server_url);
if ($server_url == '') {
return $content;
}
if (isset($protocol[0])) {
$new_content = preg_replace('/href="\//', 'href="'.$protocol[0].$server_url.'/', $content);
$new_content = preg_replace('/src="\//', 'src="'.$protocol[0].$server_url.'/', $new_content);
} else {
$new_content = $content;
}
return $new_content;
}
//取得所有链接
function get_all_url($code){
preg_match_all('/<a\s+href=["|\']?([^>"\' ]+)["|\']?\s*[^>]*>([^>]+)<\/a>/i',$code,$arr);
return array('name'=>$arr[2],'url'=>$arr[1]);
}
//获取指定标记中的内容
function get_tag_data($str, $start, $end){
if ( $start == '' || $end == '' ){
return;
}
$str = explode($start, $str);
$str = explode($end, $str[1]);
return $str[0];
}
//HTML表格的每行转为CSV格式数组
function get_tr_array($table) {
$table = preg_replace("'<td[^>]*?>'si",'"',$table);
$table = str_replace("</td>",'",',$table);
$table = str_replace("</tr>","{tr}",$table);
//去掉 HTML 标记
$table = preg_replace("'<[\/\!]*?[^<>]*?>'si","",$table);
//去掉空白字符
$table = preg_replace("'([\r\n])[\s]+'","",$table);
$table = str_replace(" ","",$table);
$table = str_replace(" ","",$table);
$table = explode(",{tr}",$table);
array_pop($table);
return $table;
}
//将HTML表格的每行每列转为数组,采集表格数据
function get_td_array($table) {
$table = preg_replace("'<table[^>]*?>'si","",$table);
$table = preg_replace("'<tr[^>]*?>'si","",$table);
$table = preg_replace("'<td[^>]*?>'si","",$table);
$table = str_replace("</tr>","{tr}",$table);
$table = str_replace("</td>","{td}",$table);
//去掉 HTML 标记
$table = preg_replace("'<[\/\!]*?[^<>]*?>'si","",$table);
//去掉空白字符
$table = preg_replace("'([\r\n])[\s]+'","",$table);
$table = str_replace(" ","",$table);
$table = str_replace(" ","",$table);
$table = explode('{tr}', $table);
array_pop($table);
foreach ($table as $key=>$tr) {
$td = explode('{td}', $tr);
array_pop($td);
$td_array[] = $td;
}
return $td_array;
}
//返回字符串中的所有单词 $distinct=true 去除重复
function split_en_str($str,$distinct=true) {
preg_match_all('/([a-zA-Z]+)/',$str,$match);
if ($distinct == true) {
$match[1] = array_unique($match[1]);
}
sort($match[1]);
return $match[1];
}

PHP 相关文章推荐
PHP新手上路(四)
Oct 09 PHP
关于Intype一些小问题的解决办法
Mar 28 PHP
用php制作简单分页(从数据库读取记录)的方法详解
May 04 PHP
PHP连接Access数据库的方法小结
Jun 20 PHP
destoon后台网站设置变成空白的解决方法
Jun 21 PHP
PHP中SimpleXML函数用法分析
Nov 26 PHP
PHP使用ffmpeg给视频增加字幕显示的方法
Mar 12 PHP
php根据用户语言跳转相应网页
Nov 04 PHP
PHP经典算法集锦【经典收藏】
Sep 14 PHP
详解php几行代码实现CSV格式文件输出
Jul 01 PHP
通过修改Laravel Auth使用salt和password进行认证用户详解
Aug 17 PHP
ThinkPHP5.0框架使用build 自动生成模块操作示例
Apr 11 PHP
php IP及IP段进行访问限制的代码
Dec 17 #PHP
php mssql 数据库分页SQL语句
Dec 16 #PHP
linux下 C语言对 php 扩展
Dec 14 #PHP
php 文件状态缓存带来的问题
Dec 14 #PHP
快速开发一个PHP扩展图文教程
Dec 12 #PHP
PHP Google的translate API代码
Dec 10 #PHP
php escape URL编码
Dec 10 #PHP
You might like
PHP的栏目导航程序
2006/10/09 PHP
CakePHP去除默认显示的标题及图标的方法
2008/10/22 PHP
深入探讨:Nginx 502 Bad Gateway错误的解决方法
2013/06/03 PHP
php中用socket模拟http中post或者get提交数据的示例代码
2013/08/08 PHP
php编程每天必学之表单验证
2016/03/01 PHP
简单的自定义php模板引擎
2016/08/26 PHP
php简单统计中文个数的方法
2016/09/30 PHP
PHP+MySQL高并发加锁事务处理问题解决方法
2018/04/30 PHP
PHP getID3类的使用方法学习笔记【附getID3源码下载】
2019/10/18 PHP
利用WebBrowser彻底解决Web打印问题(包括后台打印)
2009/06/22 Javascript
THREE.JS入门教程(1)THREE.JS使用前了解
2013/01/24 Javascript
js实现文字跟随鼠标移动而移动的方法
2015/02/28 Javascript
js鼠标点击图片切换效果代码分享
2015/08/26 Javascript
js时间戳转为日期格式的方法
2015/12/28 Javascript
Bootstrap安装环境配置教程分享
2016/05/27 Javascript
基于jquery插件编写countdown计时器
2016/06/12 Javascript
JavaScript中Array的实用操作技巧分享
2016/09/11 Javascript
JS按钮闪烁功能的实现代码
2017/07/21 Javascript
[42:27]DOTA2上海特级锦标赛主赛事日 - 3 败者组第三轮#2Fnatic VS OG第三局
2016/03/05 DOTA
Python中使用gzip模块压缩文件的简单教程
2015/04/08 Python
Python实现一个服务器监听多个客户端请求
2018/04/12 Python
Python的高阶函数用法实例分析
2019/04/11 Python
关于PyTorch 自动求导机制详解
2019/08/18 Python
详解python opencv、scikit-image和PIL图像处理库比较
2019/12/26 Python
利用CSS3 动画 绘画 圆形动态时钟
2018/03/20 HTML / CSS
html5+css如何实现中间大两头小的轮播效果
2018/12/06 HTML / CSS
COSETTE官网:奢华,每天
2020/03/22 全球购物
新年爱情寄语
2014/04/08 职场文书
小学生关于梦想的演讲稿
2014/08/22 职场文书
合伙经营协议书范本(通用版)
2014/12/03 职场文书
家属答谢词
2015/01/05 职场文书
2015年人力资源部工作总结
2015/04/30 职场文书
幼儿园百日安全活动总结
2015/05/07 职场文书
2019假期福利管理制度!
2019/07/15 职场文书
导游词之黄帝陵景区
2019/09/16 职场文书
Python基础教程,Python入门教程(超详细)
2021/06/24 Python