Home  >  Article  >  Backend Development  >  Summary of commonly used collection functions in PHP (with code)

Summary of commonly used collection functions in PHP (with code)

不言
不言Original
2018-09-04 17:51:121658browse

What this article brings to you is a summary of commonly used collection functions in PHP (with code). It has certain reference value. Friends in need can refer to it. I hope it will be helpful to you.

I have been paying attention to the collection program of PHP in the past few days, and found that it is so convenient to use PHP to collect content. I will summarize the frequently used collection functions here for future use!

Get all link content and addresses

function getAllURL($code){
preg_match_all(&#39;/<a\s+href=["|\&#39;]?([^>"\&#39; ]+)["|\&#39;]?\s*[^>]*>([^>]+)<\/a>/i&#39;,$code,$arr);
return array(&#39;name&#39;=>$arr[2],&#39;url&#39;=>$arr[1]);
}

Get all image addresses

function getImgSrc($code){
$reg = "/]*src=\"(http:\/\/(.+)\/(.+)\.(jpg|gif|bmp|bnp|png))\"/isU";
preg_match_all($reg, $code, $img_array, PREG_PATTERN_ORDER);
return $img_array[1];
}

Current script URL

function getSelfURL(){
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;
}

Convert full-width numbers to half-width numbers

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

Remove HTML tags

function text2Html($txt){
$txt = str_replace(" "," ",$txt);
$txt = str_replace("<","<",$txt);
$txt = str_replace(">",">",$txt);
$txt = preg_replace("/[\r\n]{1,}/isU","<br/>\r\n",$txt);
return $txt;
}

Clear HTML tags

function clearHtml($str){
$str = str_replace(&#39;<&#39;,&#39;<&#39;,$str);
$str = str_replace(&#39;>&#39;,&#39;>&#39;,$str);
return $str;
}

Convert relative path to absolute path

function relative2Absolute($content, $feed_url) {
preg_match(&#39;/(http|https|ftp):\/\//&#39;, $feed_url, $protocol);
$server_url = preg_replace("/(http|https|ftp|news):\/\//", "", $feed_url);
$server_url = preg_replace("/\/.*/", "", $server_url);
if ($server_url == &#39;&#39;) {
return $content;
}
if (isset($protocol[0])) {
$new_content = preg_replace(&#39;/href="\//&#39;, &#39;href="&#39;.$protocol[0].$server_url.&#39;/&#39;, $content);
$new_content = preg_replace(&#39;/src="\//&#39;, &#39;src="&#39;.$protocol[0].$server_url.&#39;/&#39;, $new_content);
} else {
$new_content = $content;
}
return $new_content;
}

Get the content in the specified tag

function getTagData($str, $start, $end){
if ( $start == &#39;&#39; || $end == &#39;&#39; ){
return;
}
$str = explode($start, $str);
$str = explode($end, $str[1]);
return $str[0];
}

HTML table Convert each row of the HTML table to a CSV format array

function getTrArray($table) {
$table = preg_replace("&#39;<td[^>]*?>&#39;si",&#39;"&#39;,$table);
$table = str_replace("</td>",&#39;",&#39;,$table);
$table = str_replace("</tr>","{tr}",$table);
//去掉 HTML 标记
$table = preg_replace("&#39;<[\/\!]*?[^<>]*?>&#39;si","",$table);
//去掉空白字符
$table = preg_replace("&#39;([\r\n])[\s]+&#39;","",$table);
$table = str_replace(" ","",$table);
$table = str_replace(" ","",$table);
$table = explode(",{tr}",$table);
array_pop($table);
return $table;
}

Convert each row and column of the HTML table to an array and collect table data

function getTdArray($table) {
$table = preg_replace("&#39;<table[^>]*?>&#39;si","",$table);
$table = preg_replace("&#39;<tr[^>]*?>&#39;si","",$table);
$table = preg_replace("&#39;<td[^>]*?>&#39;si","",$table);
$table = str_replace("</tr>","{tr}",$table);
$table = str_replace("</td>","{td}",$table);
//去掉 HTML 标记
$table = preg_replace("&#39;<[\/\!]*?[^<>]*?>&#39;si","",$table);
//去掉空白字符
$table = preg_replace("&#39;([\r\n])[\s]+&#39;","",$table);
$table = str_replace(" ","",$table);
$table = str_replace(" ","",$table);
$table = explode(&#39;{tr}&#39;, $table);
array_pop($table);
foreach ($table as $key=>$tr) {
$td = explode(&#39;{td}&#39;, $tr);
array_pop($td);
$td_array[] = $td;
}
return $td_array;
}

Return all words in the string $distinct=true to remove duplicates

function splitEnStr($str,$distinct=true) {
preg_match_all(&#39;/([a-zA-Z]+)/&#39;,$str,$match);
if ($distinct == true) {
$match[1] = array_unique($match[1]);
}
sort($match[1]);
return $match[1];
}

Related recommendations:

Commonly used functions in PHP acquisition programs

php Use CURL function to collect

The above is the detailed content of Summary of commonly used collection functions in PHP (with code). For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn