常用的正则表达式去重、匹配img标签、13位时间戳
2017-08-30 14:28
344 查看
$content : 当前的文章
$order :全部匹配
function parseImgs($content,$order='all') { $pattern='/<img.*?src="(.*?)".*?>/is'; preg_match_all($pattern,$content,$match); if(isset($match[1])&&!empty($match[1])){ if($order==='all'){ return [ 'exists' => 'y' , //图片是否存在 'url' => $match[1] //存在对应的URL ];//$match[1]; } if(is_numeric($order)&&isset($match[1][$order])){ return [ 'exists' => 'y' , //图片是否存在 'url' => $match[1][$order] //存在对应的URL ];//return $match[1][$order]; } } return [ 'exists' => 'n' , //图片是否存在 'url' => [] //存在对应的URL ]; }
//去除重复的值 function array_unique_list($arr) { $ar = array_map('serialize', $arr); $ar = array_unique($ar); return array_map('unserialize', $ar); } //13位时间戳 function Millisecond($time){ list($msec ,$sec) = explode ( " " , microtime ()); $millisecond = intval($msec*1000) + $sec*1000; return $millisecond; }
function generateCode() { //生成只有大写字母和数字 $chars = '0123456789';//所有字符的集合 $len = 6;//码值的总长度 $chars_length = strlen($chars);//字符串长度 $code = '';//初始化码值 for($i=1; $i<=$len; ++$i){//循环生成4个随机下标 $rand_index = mt_rand(0, $chars_length-1);//得到0到长度-1之间的任意随机数 $code .= $chars[$rand_index];//索引下标的字符串访问形式,拼凑码值 } return $code; }
//日期换算 function china_year($numYear){ $china_era = array('0'=>'庚','1'=>'辛','2'=>'壬','3'=>'癸','4'=>'甲','5'=>'乙','6'=>'丙','7'=>'丁','8'=>'戊','9'=>'己'); $china_branch = array('0'=>'申','1'=>'酉','2'=>'戌','3'=>'亥','4'=>'子','5'=>'丑','6'=>'寅','7'=>'卯','8'=>'辰','9'=>'巳','10'=>'午','11'=>'未'); $lastNum = mb_strcut($numYear, -1); $remainder = $numYear%12; $chinaYear = $china_era[$lastNum].$china_branch[$remainder].'年'; return $chinaYear; } //数组排序 function list_sort_by($list,$field, $sortby='asc') { if(is_array($list)){ $refer = $resultSet = array(); foreach ($list as $i => $data) $refer[$i] = &$data[$field]; switch ($sortby) { case 'asc': // 正向排序 asort($refer); break; case 'desc':// 逆向排序 arsort($refer); break; case 'nat': // 自然排序 natcasesort($refer); break; } foreach ( $refer as $key=> $val) $resultSet[] = &$list[$key]; return $resultSet; } return false; }
//对数组$arr按照$keys进行排序,$type排序方式(asc或desc),$num返回多少项 function arraySort($arr,$keys,$type,$num){ $keysvalue = $new_array = array(); foreach ($arr as $k=>$v){ $keysvalue[$k] = $v[$keys]; } if($type == 'asc'){ asort($keysvalue); }else{ arsort($keysvalue); } reset($keysvalue); $i =0; foreach ($keysvalue as $k=>$v){ $new_array[$i] = $arr[$k]; if ($i<$num){ $i++; }else{ break; } } return $new_array; }
//获取文章内的图片地址 function getPicFromString($string) { $pic = ''; $string = stripslashes($string); $string = preg_replace("/\<img src=\".*?image\/face\/(.+?).gif\".*?\>\s*/is", '', $string); //移除表情符 preg_match_all("/<[img|IMG].*?src\=[\"\'](.*?)[\"\']/i", $string, $mathes); if(!empty($mathes[1]) || !empty($mathes[2])){ $pic_arrays = array(); $pic = $mathes[0]; foreach ($pic as $key){ preg_match_all("/src\=[\"\'](.*?)[\"\']/i", substr($key,5), $picture); $pic_arrays[] = $picture[1][0]; } $pic_array['exists']="y"; $pic_array['url']=$pic_arrays; }else{ $pic_array['exists']="n"; } return $pic_array; }
//去空格 function delBlank($str) { $str = str_replace(' ','',$str); $str = preg_replace("/\s(?=\s)/", '', $str); $str = preg_replace("/[\n\r\t]/", '', $str); $str = preg_replace("/ /","",$str); $str = preg_replace("/ /","",$str); //匹配html中的空格 return trim($str); //返回字符串 } //去HTML标签 function delLabel($string) { $body = preg_replace("/<(.*?)>/", '', $string); return $body; }
相关文章推荐
- 从字符串中匹配img标签的正则表达式
- img 的正则表达式:匹配<img>标签
- 正则表达式匹配完整img标签php实现
- 匹配img标签及img 的src的正则表达式
- 匹配html img 标签的正则表达式 java
- 正则表达式匹配完整img标签php实现
- 常用的匹配正则表达式和实例
- 常用正则表达式大全!(例如:匹配中文、匹配html)
- 正则表达式同时匹配中英文及常用正则表达式
- 常用正则表达式大全!(例如:匹配中文、匹配html)
- PHP过滤常用标签的正则表达式
- 常用的匹配正则表达式和实例
- C++常用正则表达式匹配
- 常用正则表达式大全!(例如:匹配中文、匹配html)
- 常用正则表达式大全!(例如:匹配中文、匹配html)
- 正则表达式提取HTML中IMG标签的SRC地址
- [正则]常用正则表达式大全!(例如:匹配中文、匹配html)
- 常用正则表达式大全!(例如:匹配中文、匹配html)
- 常用的匹配正则表达式和实例[zt]