欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

[PHP]实用函数3

程序员文章站 2022-08-29 18:52:59
//获得当前的脚本网址 复制代码 代码如下:function get_php_url(){       ...
//获得当前的脚本网址
复制代码 代码如下:

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