[PHP]实用函数3

 更新时间:2007年11月08日 21:51:26   作者:  
//获得当前的脚本网址
复制代码 代码如下:

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("<","&lt;",$txt); 
        $txt = str_replace(">","&gt;",$txt); 
        $txt = preg_replace("/[\r\n]{1,}/isU"," 
\r\n",$txt); 
        return $txt; 


//清除HTML标记 
复制代码 代码如下:


function ClearHtml($str){ 
        $str = str_replace('<','&lt;',$str); 
        $str = str_replace('>','&gt;',$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]; 
}

相关文章

  • thinkPHP框架RBAC实现原理分析

    thinkPHP框架RBAC实现原理分析

    这篇文章主要介绍了thinkPHP框架RBAC实现原理,结合实例形式分析了thinkPHP框架中RBAC角色权限控制相关实现原理与操作技巧,需要的朋友可以参考下
    2019-02-02
  • 通过PHP的Wrapper无缝迁移原有项目到新服务的实现方法

    通过PHP的Wrapper无缝迁移原有项目到新服务的实现方法

    这篇文章主要介绍了通过PHP的Wrapper无缝迁移原有项目到新服务的实现方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-04-04
  • PHP接入微信H5支付的方法示例

    PHP接入微信H5支付的方法示例

    这篇文章主要介绍了PHP接入微信H5支付的方法示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-10-10
  • laravel 解决ajax异步提交数据,并还回填充表格的问题

    laravel 解决ajax异步提交数据,并还回填充表格的问题

    今天小编就为大家分享一篇laravel 解决ajax异步提交数据,并还回填充表格的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-10-10
  • Yii框架连接mongodb数据库的代码

    Yii框架连接mongodb数据库的代码

    这篇文章主要介绍了Yii框架连接mongodb数据库的代码的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2016-07-07
  • 浅谈PHP中关于foreach使用引用变量的坑

    浅谈PHP中关于foreach使用引用变量的坑

    下面小编就为大家带来一篇PHP不使用递归的无限级分类的实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-11-11
  • Thinkphp 框架扩展之驱动扩展实例分析

    Thinkphp 框架扩展之驱动扩展实例分析

    这篇文章主要介绍了Thinkphp 框架扩展之驱动扩展,结合实例形式分析了Thinkphp 框架驱动扩展相关原理、实现方法及操作注意事项,需要的朋友可以参考下
    2020-04-04
  • PHP 实例化类的一点摘记

    PHP 实例化类的一点摘记

    最近在编写 Grace PHP5 Framework 中,我得到很多类的实例化的心得。Grace PHP5 Framework 是一个完全基于 MVC 架构的框架,具有良好的扩展性。它对于类的调用可以说非常的灵活。
    2008-03-03
  • PHP+ajaxfileupload+jcrop插件完美实现头像上传剪裁

    PHP+ajaxfileupload+jcrop插件完美实现头像上传剪裁

    在做项目的时候,经常需要一些会员系统相关的内容,比如头像的上传与裁剪等等,下面将这块内容分享给大家
    2014-06-06
  • 基于php判断客户端类型

    基于php判断客户端类型

    本文主要介绍的是PHP判断客户端是PC端还是移动手机端方法,可以方便网站用于统计,需要了解的朋友可以参考一下。
    2016-10-10

最新评论