视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
PHP实例方法有哪些例子
2020-11-02 18:22:23 责编:小采
文档


PHP实例方法的例子有:1、PHPExcel读取Excel,2、获取文本中首张图片地址;3、将图片保存到本地;4、返回JSON数据;5、【var_dump】函数改写;6、图片转为base格式等等。

PHP实例方法的例子有:

  • PHPExcel 读取Excel

  • 获取文本中首张图片地址

  • 将图片保存到本地

  • 返回JSON数据

  • var_dump 函数改写

  • 图片转为base格式

  • 使用curl 实现get请求

  • 使用curl 实现post请求

  • 简单的xml转数组方法

  • Utf-8转统一码

  • 字符串转统一编码

  • 获取IP地址

  • 创建随机字符串

  • 根据生日获取年龄

  • 根据经纬度计算距离

  • PHPExcel 读取excel

    function readExcel($filename, $encode = 'utf-8')
    {
    // import("ORG.Util.PHPExcel.IOFactory");
     import("Org/Util/PHPExcel");
     if (strpos($filename, "xlsx")) {
     $objReader = PHPExcel_IOFactory::createReader('Excel2007');
     } else {
     $objReader = PHPExcel_IOFactory::createReader('Excel5');
     }
     $objReader->setReadDataOnly(true);
     $objPHPExcel = $objReader->load($filename);
     $objWorksheet = $objPHPExcel->getActiveSheet();
     $highestRow = $objWorksheet->getHighestRow();
     $highestColumn = $objWorksheet->getHighestColumn();
     $highestColumnIndex = PHPExcel_Cell::columnIndexFromString($highestColumn);
     $excelData = array();
     for ($row = 1; $row <= $highestRow; $row++) {
     if ((string)$objWorksheet->getCellByColumnAndRow(0, $row)->getValue() == "") continue;
     for ($col = 0; $col < $highestColumnIndex; $col++) {
     $value = (string)$objWorksheet->getCellByColumnAndRow($col, 1)->getValue();
     if ($value == "") {
     continue;
     }
     $excelData[$row - 1][] = (string)$objWorksheet->getCellByColumnAndRow($col, $row)->getValue();
     }
     }
     return $excelData;
    }

    获取文本中首张图片地址

    function getFirstPic($content){
     if(preg_match_all("/(src)=(["|']?)([^ "'>]+.(gif|jpg|jpeg|bmp|png))2/i", $content, $matches)){
     $str=$matches[3][0];
     if(preg_match('//ueditor/php/upload/image/',$str)){
     return $str1=substr($str,6);
     }
     }
    }

    将图片保存到本地

    function getImage($url,$save_dir='',$filename='',$type=1){
     if(trim($url)==''){
     return array('file_name'=>'','save_path'=>'','error'=>1);
     }
     if(trim($save_dir)==''){
     $save_dir='./';
     }
     if(trim($filename)==''){//保存文件名
     $ext = strrchr($url,'.');
     if($ext!='.gif'&&$ext!='.jpg'){
     return array('file_name'=>'','save_path'=>'','error'=>3);
     }
     $filename=time().$ext;
     }
     if(0!==strrpos($save_dir,'/')){
     $save_dir.='/';
     }
     //创建保存目录
     if(!file_exists($save_dir)&&!mkdir($save_dir,0777,true)){
     return array('file_name'=>'','save_path'=>'','error'=>5);
     }
     //获取远程文件所采用的方法
     if($type){
     $ch=curl_init();
     $timeout=5;
     curl_setopt($ch,CURLOPT_URL,$url);
     curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
     curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,$timeout);
     $img=curl_exec($ch);
     curl_close($ch);
     }
     else{
     ob_start();
     readfile($url);
     $img=ob_get_contents();
     ob_end_clean();
     }
     $size=strlen($img);
     echo $size;
     //文件大小
     $fp2=fopen($save_dir.$filename,'a');
     fwrite($fp2,$img);
     fclose($fp2);
     unset($img,$url);
     return array('file_name'=>$filename,'save_path'=>$save_dir.$filename,'error'=>0);
    }

    返回JSON数据

    function show($status, $msg, $closeCurrent=false, $data=array()){
     $tmpArr = array(
     'statusCode' => $status,
     'message' => $msg,
     'closeCurrent' => $closeCurrent,
     );
     $tmpArr = array_merge($tmpArr, $data);
     exit(json_encode($tmpArr));
    }

    var_dump 函数改写

    function lyl_dump($content){
     header("Content-type:text/html;charset=utf-8");
     echo '<meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0" name="viewport" />';
     echo "<pre>";
     var_dump($content);
     echo "<pre/>";
     die;
    }

    图片转为base格式

    function baseEncodeImage ($image_file) {
     if(!file_exists($image_file)){
     return false;
     }
     $image_info = getimagesize($image_file);
     $image_data = fread(fopen($image_file, 'r'), filesize($image_file));
     $base_image = chunk_split(base_encode($image_data));
     return $base_image;
    }

    使用curl 实现get请求

    function httpGet($url) {
     $curl = curl_init();
     curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
     curl_setopt($curl, CURLOPT_TIMEOUT, 500);
     curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, true); //这个是的ssl校验,需要验证
     curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, true); //
     curl_setopt($curl, CURLOPT_URL, $url);
     $res = curl_exec($curl);
     curl_close($curl);
     return $res;
    }

    使用curl 实现post 请求

    function httpPost($url,$post_data){
     $curl = curl_init();
     $post_data = json_encode($post_data);
     curl_setopt($ch , CURLOPT_URL , $url);
     curl_setopt($ch , CURLOPT_HEADER , 0 );
     curl_setopt( $ch, CURLOPT_POST, 1); //设置为POST方式
     curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
     curl_setopt($ch , CURLOPT_POSTFIELDS , $post_data);
     $rst = curl_exec( $ch );
     curl_close( $ch );
     return $rst;
    }

    简单的xml转数组方法

    function simplexml_to_array($simplexml_obj, $array_tags = array(), $strip_white = 1)
    {
     if ($simplexml_obj) {
     if (count($simplexml_obj) == 0)
     return $strip_white ? trim((string)$simplexml_obj) : (string)$simplexml_obj;
     $attr = array();
     foreach ($simplexml_obj as $k => $val) {
     if (!empty($array_tags) && in_array($k, $array_tags)) {
     $attr[] = simplexml_to_array($val, $array_tags, $strip_white);
     } else {
     $attr[$k] = simplexml_to_array($val, $array_tags, $strip_white);
     }
     }
     return $attr;
     }
     return FALSE;
    }

    Utf-8转统一码

    function utf8_to_unicode($char)
    {
     switch (strlen($char)) {
     case 1:
     return ord($char);
     case 2:
     $n = (ord($char[0]) & 0x3f) << 6;
     $n += ord($char[1]) & 0x3f;
     return $n;
     case 3:
     $n = (ord($char[0]) & 0x1f) << 12;
     $n += (ord($char[1]) & 0x3f) << 6;
     $n += ord($char[2]) & 0x3f;
     return $n;
     case 4:
     $n = (ord($char[0]) & 0x0f) << 18;
     $n += (ord($char[1]) & 0x3f) << 12;
     $n += (ord($char[2]) & 0x3f) << 6;
     $n += ord($char[3]) & 0x3f;
     return $n;
     }
    }

    字符串转统一编码

    function str_to_unicode_word($str,$depart=' ')
    {
     $arr = array();
     $str_len = mb_strlen($str,'utf-8');
     for($i = 0;$i < $str_len;$i++)
     {
     $s = mb_substr($str,$i,1,'utf-8');
     if($s != ' ' && $s != ' ')
     {
     $arr[] = 'ux'.utf8_to_unicode($s);
     }
     }
     return implode($depart,$arr);
    }

    获取IP地址

    function getIP()
    {
     static $realip;
     if (isset($_SERVER)) {
     if (isset($_SERVER["HTTP_X_FORWARDED_FOR"])) {
     $realip = $_SERVER["HTTP_X_FORWARDED_FOR"];
     } else if (isset($_SERVER["HTTP_CLIENT_IP"])) {
     $realip = $_SERVER["HTTP_CLIENT_IP"];
     } else {
     $realip = $_SERVER["REMOTE_ADDR"];
     }
     } else {
     if (getenv("HTTP_X_FORWARDED_FOR")) {
     $realip = getenv("HTTP_X_FORWARDED_FOR");
     } else if (getenv("HTTP_CLIENT_IP")) {
     $realip = getenv("HTTP_CLIENT_IP");
     } else {
     $realip = getenv("REMOTE_ADDR");
     }
     }
     return $realip;
    }

    创建随机字符串

    function createNonceStr($length = 16)
    {
     $chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ01234567";
     $str = "";
     for ($i = 0; $i < $length; $i++) {
     $str .= substr($chars, mt_rand(0, strlen($chars) - 1), 1);
     }
     return $str;
    }

    根据生日获取年龄

    function get_age($birthday){
     if($birthday){
     list($y1,$m1,$d1) = explode("-",date("Y-m-d",$birthday));
     list($y2,$m2,$d2) = explode("-",date("Y-m-d",time()));
     $age = $y2-$y1;
     if(intval($m2.$d2) < intval($m1.$d1)) {$age -= 1;}
     return $age;
     }else{
     return "未知";
     }
    }

    根据经纬度计算距离

    function getDistance($lat1, $lng1, $lat2, $lng2)
    {
     $earthRadius = 6367000; 
     $lat1 = ($lat1 * pi() ) / 180;
     $lng1 = ($lng1 * pi() ) / 180;
     $lat2 = ($lat2 * pi() ) / 180;
     $lng2 = ($lng2 * pi() ) / 180;
     $calcLongitude = $lng2 - $lng1;
     $calcLatitude = $lat2 - $lat1;
     $stepOne = pow(sin($calcLatitude / 2), 2) + cos($lat1) * cos($lat2) * pow(sin($calcLongitude / 2), 2);
     $stepTwo = 2 * asin(min(1, sqrt($stepOne)));
     $calculatedDistance = $earthRadius * $stepTwo;
     return round($calculatedDistance);
    }

    相关免费学习推荐:php编程(视频)

    下载本文
    显示全文
    专题