[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]; 
}

相关文章

  • laravel model模型处理之修改查询或修改字段时的类型格式案例

    laravel model模型处理之修改查询或修改字段时的类型格式案例

    今天小编就为大家分享一篇laravel model模型处理之修改查询或修改字段时的类型格式案例,具有很好的参考价值,希望对大家有所帮助。一起跟随想过来看看吧
    2019-10-10
  • CI框架安全类Security.php源码分析

    CI框架安全类Security.php源码分析

    之前我们分析了CI框架的session类session.php,本文我们继续分析CI框架的安全类security.php文件,方便我们更详细的了解CI框架,从而更熟练的应用CI框架
    2014-11-11
  • 深入理解PHP变量的值类型和引用类型

    深入理解PHP变量的值类型和引用类型

    在PHP中,大部分变量类型,如字符串,整型,浮点,数组等都是值类型的,而类和对象是引用类型,在使用的时候,需要注意这一点。
    2015-10-10
  • HTTP中header头部信息详解

    HTTP中header头部信息详解

    这篇文章主要介绍了HTTP中header头部信息详解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-08-08
  • 使用Apache的htaccess防止图片被盗链的解决方法

    使用Apache的htaccess防止图片被盗链的解决方法

    本篇文章介绍了,php中使用Apache的htaccess防止图片被盗链的解决方法。需要的朋友参考下
    2013-04-04
  • Thinkphp模板中使用自定义函数的方法

    Thinkphp模板中使用自定义函数的方法

    内置模板引擎支持对模板变量使用函数,并支持多个函数同时使用
    2012-09-09
  • Laravel框架中composer自动加载的实现分析

    Laravel框架中composer自动加载的实现分析

    Laravel作为在国内国外都颇为流行的PHP框架,风格优雅,其拥有自己的一些特点。下面这篇文章主要给大家介绍了关于Laravel框架中composer自动加载实现的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考下。
    2017-12-12
  • php微信支付之公众号支付功能

    php微信支付之公众号支付功能

    这篇文章主要为大家详细介绍了php微信支付之公众号支付功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-05-05
  • 利用php + Laravel如何实现部署自动化详解

    利用php + Laravel如何实现部署自动化详解

    这篇文章主要给大家介绍了关于利用php + Laravel如何实现部署自动化的相关资料,文中通过示例代码介绍非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考借鉴,下面来一起看看吧。
    2017-10-10
  • laravel项目利用twemproxy部署redis集群的完整步骤

    laravel项目利用twemproxy部署redis集群的完整步骤

    Twemproxy是一个代理服务器,可以通过它减少Memcached或Redis服务器所打开的连接数。下面这篇文章主要给大家介绍了关于laravel项目利用twemproxy部署redis集群的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
    2018-05-05

最新评论