实用函数3


Posted in PHP onNovember 08, 2007

//获得当前的脚本网址

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","  
\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]);   
} 

//HTML表格的每行转为CSV格式数组 
function get_tr_array($table) {  
        $table = preg_replace("'<td[^>]*?>'si",'"',$table);  
        $table = str_replace("</td>",'",',$table);  
        $table = str_replace("</tr>","{tr}",$table);  
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 相关文章推荐
如何给phpadmin一个保护
Oct 09 PHP
SSI指令
Nov 25 PHP
PHP按行读取文件时删除换行符的3种方法
May 04 PHP
3款值得推荐的微信开发开源框架
Oct 28 PHP
19个Android常用工具类汇总
Dec 30 PHP
浅谈本地WAMP环境的搭建
May 13 PHP
PHP实现多维数组转字符串和多维数组转一维数组的方法
Aug 08 PHP
win平台安装配置Nginx+php+mysql 环境
Jan 12 PHP
基于PHP制作验证码
Oct 12 PHP
降低PHP Redis内存占用
Mar 23 PHP
PHP基于XMLWriter操作xml的方法分析
Jul 17 PHP
PHP 多进程与信号中断实现多任务常驻内存管理实例方法
Oct 04 PHP
实用函数2
Nov 08 #PHP
一个图形显示IP的PHP程序代码
Oct 19 #PHP
php在线生成ico文件的代码
Oct 09 #PHP
pw的一个放后门的方法分析
Oct 08 #PHP
使用 eAccelerator加速PHP代码的方法
Sep 30 #PHP
实现php加速的eAccelerator dll支持文件打包下载
Sep 30 #PHP
用windows下编译过的eAccelerator for PHP 5.1.6实现php加速的使用方法
Sep 30 #PHP
You might like
PHP 危险函数解释 分析
2009/04/22 PHP
php foreach 参数强制类型转换的问题
2010/12/10 PHP
让PHP显示Facebook的粉丝数量方法
2014/01/08 PHP
JS网络游戏-(模拟城市webgame)提供的一些例子下载
2007/10/14 Javascript
JQuery跨Iframe选择实现代码
2010/08/19 Javascript
javascript getElementsByClassName实现代码
2010/10/11 Javascript
弹出层之1:JQuery.Boxy (一) 使用介绍
2011/10/06 Javascript
jQuery左右滚动支持图片放大缩略图图片轮播代码分享
2015/08/26 Javascript
基于nodejs+express(4.x+)实现文件上传功能
2015/11/23 NodeJs
利用jquery制作滚动到指定位置触发动画
2016/03/26 Javascript
AngularJs 弹出模态框(model)
2016/04/07 Javascript
Javascript缓存API
2016/06/14 Javascript
Bootstrap栅格系统学习笔记
2016/11/25 Javascript
JavaScript 最佳实践:帮你提升代码质量
2016/12/03 Javascript
nodejs连接mysql数据库简单封装示例-mysql模块
2017/04/10 NodeJs
微信小程序的日期选择器的实例详解
2017/09/29 Javascript
Vue.js划分组件的方法
2017/10/29 Javascript
vue实现评价星星功能
2020/06/30 Javascript
vue中v-model对select的绑定操作
2020/08/31 Javascript
Vue.extend 登录注册模态框的实现
2020/12/29 Vue.js
Python tempfile模块学习笔记(临时文件)
2014/05/25 Python
Python文件右键找不到IDLE打开项解决办法
2015/06/08 Python
Python实现的摇骰子猜大小功能小游戏示例
2017/12/18 Python
Python基本socket通信控制操作示例
2019/01/30 Python
python numpy中cumsum的用法详解
2019/10/17 Python
举例讲解Python装饰器
2020/12/24 Python
css3 box-sizing属性使用参考指南
2013/01/08 HTML / CSS
css3利用transform变形结合事件完成扇形导航
2020/10/26 HTML / CSS
小摄影师教学反思
2014/04/27 职场文书
国际经济贸易专业自荐信
2014/06/13 职场文书
2014年教师节演讲稿范文
2014/09/10 职场文书
基层党员群众路线教育实践活动个人对照检查材料思想汇报
2014/10/05 职场文书
内勤岗位职责范本
2015/04/13 职场文书
2015年酒店客房部工作总结
2015/04/25 职场文书
感恩老师主题班会
2015/08/12 职场文书
pytorch model.cuda()花费时间很长的解决
2021/06/01 Python