php实例 让你从中学习经验

网友分享于:2018-07-06 22:51 发表在 PHP

 对于php的学习,我们可以多点参考别人写的代码,这样就可以从中获取到一些经验。再总结自己的不足与发现。对别人的代码进行优化。接下来,就让如果零 if0.CN的小编来讲解一下php实例。

图片 1.png

  php实例 让你从中学习经验

  函数对0的判断

  $cast_id = 0;

  var_dump(strlen($cast_id)); //1

  var_dump(empty($cast_id)); // true

  var_dump(isset($cast_id)); //true

  var_dump(is_null($cast_id));//false

  对空的判断

  $cast_id = "";

  var_dump(strlen($cast_id)); //0

  var_dump(empty($cast_id)); // true

  var_dump(isset($cast_id)); //true

  var_dump(is_null($cast_id));//false

  * 多选图片上传

  * @version v1.0.0

  * @author

  * @since 17-11-24

  public function upload()

  {

  $file = $_FILES['file'];

  empty($file) && $this->response(201,'请选择要上传的文件');

  unset($_FILES['file']);

  $count = count($file['name']); // 上传图片的数量

  $count > 10 && $this->response(203,'批量上传图片一次最多上传10张图片');

  $tmpFile = [];

  $returnData = [];

  for($i=0;$i

  {

  $tmpFile['name'] = $file['name'][$i];

  $tmpFile['type'] = $file['type'][$i];

  $tmpFile['tmp_name'] = $file['tmp_name'][$i];

  $tmpFile['error'] = $file['error'][$i];

  $tmpFile['size'] = $file['size'][$i];

  $_FILES['file_'.$i] = $tmpFile;

  // 判断是否是允许的图片类型

  $ext = substr($_FILES['file_'.$i]['name'],strrpos($_FILES['file_'.$i]['name'],'.')+1); // 上传文件后缀

  stripos('jpeg|png|bmp|jpg',$ext) === FALSE && $this->response(210,'图片格式支持 JPEGPNGBMP格式图片');

  $data = $this->uploadOne('file_'.$i,'jpeg|png|bmp|jpg');

  if($data['status'] == 1)

  {

  $this->response(500,''.($i+1).'张图片上传失败,'.$data['msg']);

  }

  $returnData[$i]['url'] = $data['url']; // 图片路径

  $returnData[$i]['old_name'] = substr($tmpFile['name'],0,strrpos($tmpFile['name'], '.')); // 图片原名称

  }

  $this->response(200,'successful',$returnData);

  }

图片 2.png

  php实例 让你从中学习经验

  * 单文件上传

  * @version v1.0.0

  * @author

  * @since 17-11-24

  * @param $file 上传表单name名称

  * @param $type 上传类型

  * @param $maxSize 上传文件限制大小(默认 10M)

  */

  private function uploadOne($filename = 'file',$type = 'jpeg|png|bmp|jpg',$maxSize = 10240)

  {

  list($width,$height) = getimagesize($_FILES[$filename]['tmp_name']); // 获取图片的宽和高

  list($usec, $sec) = explode(" ", microtime());

  $time = $sec.substr($usec,2); // 秒数+微秒数

  $ext = substr($_FILES[$filename]['name'],strrpos($_FILES[$filename]['name'],'.')+1); // 上传文件后缀

  $name = $time.'-'.$width.'*'.$height.'.'.$ext;

  $filePath = $_FILES[$filename]['tmp_name'];

  $type = $_FILES[$filename]['type'];

  $this->load->library('Qiniu');

  $returnData['url'] = $this->qiniu->upload($name,$filePath,$type);

  $returnData['status'] = 0;

  return $returnData;

  }

  以上就是关于php实例的相关介绍,相信你看完这些php实例,应该能够学习到一些经验知识。如果想了解更多,请密切关注如果零 if0.CN的网站。



推荐分类: Web开发 Web前端 HTML/CSS PHP ASP JavaScript jQuery HTML5 vbScript Ajax 网页设计 跨浏览器开发 高性能WEB开发 Web Service XML/SOAP CGI
推荐标签: php websocket input navicat finereport
相关文章
最新发表
热门推荐