//参数1 文件名 参数2 缩放比例 function _thumb($_filename,$_percent){ ob_clean(); //生成png标头文件 header('Content-type:image/png'); $_n=explode('.', $_filename); //获取文件的信息,宽和高 list($_width,$_height)=getimagesize($_filename); //生成缩略后的大小 $_new_width=$_width*$_percent; $_new_height=$_height*$_percent; //按照新的大小创建微缩画布 $_new_image=imagecreatetruecolor($_new_width, $_new_height); //按照已经有的图片创建一个画布[按照图片类型] switch($_n[1]){ case 'jpg':$_image=imagecreatefromjpeg($_filename); break; case 'png':$_image=imagecreatefrompng($_filename); break; case 'gif':$_image=imagecreatefromgif($_filename); break; } //将原来的图复制到新的图片上 imagecopyresampled($_new_image, $_image, 0, 0, 0, 0, $_new_width, $_new_height, $_width, $_height); //输出图片 imagepng($_new_image); //销毁新资源句柄 imagedestroy($_new_image); //销毁原资源句柄 imagedestroy($_image); }
源码:特别适用于微信支付中通知微信支付网关function array2xml($arr, $level = 1) { $s = $level == 1 ? "<xml&g...
php7.1引入了PHP异步信号处理函数pcntl_async_signals() 来处理阻塞问题。在php7之前信号处理方式有2种,第一种是基于ticks来每执行一行代码来触发执行信号监听,第二种是直接while(true){ //监听信号 }第一种方式如果某行的代码阻塞时间较长会影响...
为什么使用队列?因为pop取队列具有原子性。假如我们需要秒杀一个商品id,我们先将商品的库存保存到一个队列。例如:<?php $redis = new Redis(); $redis->connect('127.0.0.1', 6...
(1).管道是干嘛的?管道是用于进程之间通信的,传播或交换信息(2).管道有几种?(2.1).匿名管道(pipe):管道是一种半双工的通信方式,数据只能单向流动,而且只能在具有亲缘关系的进程间使用。通常是指父子进程关系。(2.2).高级管道(popen):将另一个程序当做一个新的进程在当前程序进程中...
本文基于Laravel Framework 6.17.1版本(1).创建项目(依赖真多,如此臃肿)composer create-project --prefer-dist laravel/laravel blog(2).安装定时任务composer包&nbs...
(1).今天遇到一件奇怪的事情,在event事件中是无法自定义异常处理,例如我们使用set_exception_handler来统一处理异常。例如下面的代码:<?php error_reporting(E_ALL); set_error_handler(function ($errn...