时间:2021-07-01 10:21:17 帮助过:32人阅读
PHP实例方法的例子有:1、PHPExcel读取Excel,2、获取文本中首张图片地址;3、将图片保存到本地;4、返回JSON数据;5、【var_dump】函数改写;6、图片转为base64格式等等。
PHP实例方法的例子有:
PHPExcel 读取Excel
获取文本中首张图片地址
将图片保存到本地
返回JSON数据
var_dump 函数改写
图片转为base64格式
使用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;
- }
图片转为base64格式
- function base64EncodeImage ($image_file) {
- if(!file_exists($image_file)){
- return false;
- }
- $image_info = getimagesize($image_file);
- $image_data = fread(fopen($image_file, 'r'), filesize($image_file));
- $base64_image = chunk_split(base64_encode($image_data));
- return $base64_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 = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
- $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编程(视频)
以上就是PHP实例方法有哪些例子的详细内容,更多请关注gxlcms其它相关文章!