实用函数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 相关文章推荐
php GD绘制24小时柱状图
Jun 28 PHP
php打印一个边长为N的实心和空心菱型的方法
Mar 02 PHP
php实现字符串反转输出的方法
Mar 14 PHP
PHP生成树的方法
Jul 28 PHP
详解WordPress开发中get_header()获取头部函数的用法
Jan 08 PHP
PHP+JS三级菜单联动菜单实现方法
Feb 24 PHP
ThinkPHP 整合Bootstrap Ajax分页样式
Dec 23 PHP
php使用str_shuffle()函数生成随机字符串的方法分析
Feb 17 PHP
轻松实现php文件上传功能
Feb 17 PHP
几行代码轻松实现PHP文件打包下载zip
Mar 01 PHP
thinkphp5 URL和路由的功能详解与实例
Dec 26 PHP
PHP封装XML和JSON格式数据接口操作示例
Mar 06 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编写PDF文档生成器
2006/10/09 PHP
PHP中feof()函数实例测试
2014/08/23 PHP
php设计模式之简单工厂模式详解
2014/09/04 PHP
Yii1.1中通过Sql查询进行的分页操作方法
2017/03/16 PHP
让firefox支持IE的一些方法的javascript扩展函数代码
2010/01/02 Javascript
让浏览器非阻塞加载javascript的几种方法小结
2011/04/25 Javascript
javascript权威指南 学习笔记之变量作用域分享
2011/09/28 Javascript
通过javascript获取iframe里的值示例代码
2013/06/24 Javascript
完美兼容各大浏览器获取HTTP_REFERER方法总结
2014/06/24 Javascript
浅谈JavaScript函数节流
2014/12/09 Javascript
正则表达式(语法篇推荐)
2016/06/24 Javascript
jQuery 移动端拖拽(模块化开发,触摸事件,webpack)
2016/10/28 Javascript
vue实现在表格里,取每行的id的方法
2018/03/09 Javascript
vue 监听键盘回车事件详解 @keyup.enter || @keyup.enter.native
2018/08/25 Javascript
[41:52]2018DOTA2亚洲邀请赛3月29日小组赛B组Effect VS Secret
2018/03/30 DOTA
python实现逆波兰计算表达式实例详解
2015/05/06 Python
python连接mysql实例分享
2016/10/09 Python
Python基于PyGraphics包实现图片截取功能的方法
2017/12/21 Python
Python对象属性自动更新操作示例
2018/06/15 Python
opencv python 图像轮廓/检测轮廓/绘制轮廓的方法
2019/07/03 Python
详解pandas中MultiIndex和对象实际索引不一致问题
2019/07/23 Python
Python中list循环遍历删除数据的正确方法
2019/09/02 Python
Django发送邮件功能实例详解
2019/09/02 Python
python递归函数求n的阶乘,优缺点及递归次数设置方式
2020/04/02 Python
Python Flask框架实现简单加法工具过程解析
2020/06/03 Python
pytorch随机采样操作SubsetRandomSampler()
2020/07/07 Python
修复iPhone的safari浏览器上submit按钮圆角bug
2012/12/24 HTML / CSS
利用纯css3实现的文字亮光特效的代码演示
2014/11/27 HTML / CSS
英国内衣连锁店:Boux Avenue
2018/01/24 全球购物
传统软件工程与面向对象的软件工程有什么区别
2012/05/31 面试题
绝对经典成功的大学生推荐信
2013/11/08 职场文书
大学生学业生涯规划
2014/01/05 职场文书
《藏戏》教学反思
2014/02/11 职场文书
企业仓管员岗位职责
2014/06/15 职场文书
小区门卫岗位职责范本
2014/08/24 职场文书
加薪申请报告范本
2015/05/15 职场文书