php
AreoWarm
实践才是检验真理的唯一标准
展开
-
[准确]判断PHP键值数组是否存在,使用empty或isset或array_key_exists
本文目的前几天工作中,需要频繁判断数组中的键值对是否存在,起初使用的”!empty($arr[‘key’])”来判断,觉得这样读起来比较舒服,但是写出的代码无法通过单元测试(单元测试太好了)。排查很久,终于发现,当$arr[‘key’] == 0时,empty仍然返回true,这样破坏了业务逻辑!今天终于有空,就将判断数组键值对存在的方法查阅了一下,记录于此,作为备忘。一个例子猜猜看,下面的例子会输出什么?$a = array('a'=>1, 'b'=>0, 'c'=.转载 2021-03-20 12:36:08 · 357 阅读 · 0 评论 -
php 加减乘除保留小数函数
参考地址:php BC数学函数/** * @desc:精确加法 * @param [type] $a [description] * @param [type] $b [description] * @param int $scale 保留小数位数 * @return string * @author:圣灵儿 2864934511@qq.com * @date: 2020-10-28 09:13:29 */function math_add($a, $b, $scale = 0)原创 2020-10-28 15:54:19 · 535 阅读 · 0 评论 -
php截取字符串中文乱码(汇聚)
出现截取乱码原因,大多是因为编码,在日常生活中也经常用到,也有坑,这里收集了一下网上比较常见的几种方式(来源:https://www.jb51.net/article/141043.htm,http://www.itheima.com/news/20180724/110943.html,https://www.php.cn/php-ask-430993.html等网络资源)substr()函数截取带有中文字符串的话,可能会出现乱码,这是因为中西文一个字节所占有的字节数不一样,而substr的长度参.原创 2020-10-27 10:58:24 · 367 阅读 · 0 评论 -
php中word/doc转html
第一步:安装 PhpOffice\PhpWordgithub地址:https://github.com/PHPOffice/PHPWord/这里仅支持composer安装,第二步:引入PhpWord$path = './file.doc';//文件路径$path2 = './test_doc_html.html';//存放的路径include_once(ROOT_PATH...原创 2020-01-14 03:00:22 · 950 阅读 · 5 评论 -
修改默认PHP版本(宝塔)
处理掉以前的rm -f /usr/bin/php引用你想要的版本ln -sf /www/server/php/72/bin/php /usr/bin/php原创 2019-01-28 17:37:07 · 7994 阅读 · 0 评论 -
替换大写数字为小写数字 (php)
思路:将单位都按照对应逻辑删除或替换,数字都对应替换注:我的场景是替换小说章节标题中的数字,类似:“第一万二千五百六十一章 我爱你,永不放弃” 这样的字符串标题中的大写数字if (preg_match('/^第([\x{4e00}-\x{9fa5}A-Za-z0-9_]+)章/u', $now)&&strlen($now)<45) { $std= exp...原创 2018-12-30 09:33:41 · 961 阅读 · 0 评论 -
html右边侧边栏固定悬浮(PHP渲染)
CSS:.toolbars ul li{ list-style: none; } .toolbars ul a{ text-decoration: none; color: #666; } .toolbars ul a:hover{ ...原创 2018-12-30 09:23:14 · 5221 阅读 · 0 评论 -
常用评论时间描述
1、常用评论时间描述(不知道来自哪里了,哈哈,见谅哈)//评论常用时间术语function mdate($time = NULL) { $text = ''; $time = $time === NULL || $time > time() ? time() : intval($time); $t = time() - $time; //时间差 (秒) ...转载 2018-11-01 16:10:43 · 420 阅读 · 0 评论 -
PHP写入、读出、表单更改文件内容显示!(原生态)
直接上代码:一、写入和显示已写入文件内容:<?phpheader("Content-type: text/html; charset=utf-8");$name = "无";// echo "\n开始\n";// var_dump($_GET);//首先看是否传值过来了,如果有就写入文件if($_POST['name']&&$_POST['type']...原创 2018-09-30 14:45:32 · 1740 阅读 · 2 评论 -
linux kill 掉所有匹配到名字的进程
如,要 kill 掉 swoole_job 相关的进程ps aux | grep swoole_job | awk '{print $2}' | xargs kill -9 ps 列出所有进程,参数:a - 显示现行终端机下的所有进程,包括其他用户的进程;u - 以用户为主的进程状态 ;x - 通常与 a 这个参数一起使用,可列出较完整信息。 grep 过滤...转载 2019-02-14 17:38:04 · 4617 阅读 · 0 评论 -
安装easyswoole(宝塔坑)
首先一点,现在宝塔默认的swoole版本是不支持最新版的easyswoole的,而且还不能升级(pecl upgrade swoole),所以只能自己编辑安装的swoole最新版(swoole-4.2.13),才支持!那么开始:第一步:安装swoole;找到这个版本甚至比这个搞的swoole版本,地址:https://pecl.php.net/package/swoole...原创 2019-02-16 17:51:35 · 5267 阅读 · 0 评论 -
Linux安装 swoole-jobs (宝塔坑)
今天安装swoole-jobs,服务器又是宝塔的,看网上都很轻松,但是没想到又踩坑了,所以留下足迹,为填坑贡献一份力量。第一步,根据官方文档安装,我这里是直接git clone的官网 github 地址:https://github.com/kcloze/swoole-jobs,安装信息如下:git clone https://github.com/kcloze/swoole-job...原创 2019-02-19 15:56:27 · 1082 阅读 · 0 评论 -
tp5 安装think-swoole (宝塔坑)
因项目需要处理高并发问题,所以就用到了这个think-swoole,不过宝塔又坑了我一次(这次其实不怪它,人家也是为了减少依赖),开始安装:打开tp5安装官方文档安装第一步:首先按照Swoole官网说明安装swoole扩展(参考:安装easyswoole中上阙),进入项目 /根目录,然后安装think-swoole扩展。composer require vendor/topthin...原创 2019-03-06 14:40:59 · 10422 阅读 · 0 评论 -
跨域(php)
//解决跨域问题/* header('Access-Control-Allow-Origin:*');//允许所有来源访问 header('Access-Control-Allow-Method:POST,GET');//允许访问的方式*/ if($_SERVER['REQUEST_METHOD'] == 'OPTIONS'){ ...原创 2019-08-13 22:58:44 · 414 阅读 · 0 评论 -
apidoc实例
/** * @apiDefine MyError * @apiError {String} msg 失败描述 * @apiError {String} code 失败标识,值为0 * @apiError {Integer} data 失败返回数据,可能为空 * @apiErrorExample {json} Error-Response:...原创 2019-09-04 11:51:48 · 1176 阅读 · 0 评论 -
apidoc自定义 标签|参数
这里自定义一个 apiAuthor - 开发者第一步:首先在找到你的apidoc安装目录,我这里是:C:\Users\Administrator\AppData\Roaming\npm\node_modules\apidoc\注:以下目录都是以这个为跟目录。第二步:找到定义文件:.\node_modules\apidoc-core\lib\index.js第三步:添加...原创 2019-09-04 15:56:49 · 783 阅读 · 0 评论 -
mysql保存Emoji表情或微信文字、图文回复带Emoji等微信表情图标?
背景:客户需要在自动回复的文字、图文表情上使用Emoji表情?原因:Mysql表设计时,都是用UTF8字符集的,Mysql的utf8字符集是3字节的,而emoji是4字节,所以保存修改等操作会出错。准备: mysql的版本必须为 v5.5.3 或更高 把数据库的编码改成 utf8mb4 -- UTF-8 Unicode 然后需要存储emoji表情的字段编码...原创 2018-09-20 20:32:37 · 1188 阅读 · 0 评论 -
删除指定目录下指定后缀的文件
//定时清除计划任务日志文件,避免占用太大磁盘空间$folderpath = "/www/server/log";//要操作的目录$deltype = array('log');foreach ($deltype as $file_type) { clearn_file($folderpath, $file_type);}/** *@param $path文件夹绝对路径 ...转载 2018-07-29 14:38:20 · 1247 阅读 · 0 评论 -
图片压缩,输出.png(有可能还是jpg类型,只是后缀为.png而已)
function resize($srcImage, $toFile = "", $maxWidth, $maxHeight, $imgQuality = 100) { list($width, $height, $type, $attr) = getimagesize($srcImage);// if($width < $maxWidth || $height <原创 2017-10-28 09:03:50 · 560 阅读 · 0 评论 -
在服务器上创建目录
//创建目录 function mdir($name) { $subdir = "./img/" . $name; if (!is_dir($subdir)) { mkdir($subdir, 0777, true); } return $subdir; }注意:1、保证有“./img”这原创 2017-10-28 09:10:34 · 5277 阅读 · 0 评论 -
文字印入图片位置计算
function hectext($im, $name, $xx,$y,$type) { $font = './res/ziti1507549601351.ttf';//字体路径 $fontSize = 18;//18号字体 $fontColor = imagecolorallocate($im, 255, 255, 255);//字体的RGB原创 2017-10-28 09:22:19 · 320 阅读 · 0 评论 -
生成模糊图像
<?php class image_blur{ /** * 图片高斯模糊(适用于png/jpg/gif格式) * @param $srcImg 原图片 * @param $savepath 保存路径 * @param $savename 保存名字 * @param $positon 模糊程度 * *基于Mar转载 2017-10-28 11:48:47 · 1266 阅读 · 0 评论 -
单页微信分享 php+html+js 混编最简版
前提是:你有 appId appSecret<?phpfunction my_curl_get($url){ $ch = curl_init($url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch,CURLOPT_POST,0); $res = curl_exec($ch);原创 2017-10-28 09:32:04 · 1221 阅读 · 0 评论 -
上传文件格式
3gp video/3gppaab application/x-authoware-binaam application/x-authoware-mapaas application/x-authoware-segai application/postscriptaif audio/x-aiffaifc audio/x-aiffaiff audio/x-aiffal转载 2017-10-14 11:17:38 · 2189 阅读 · 0 评论 -
PHP中 HTTP_HOST 和 SERVER_NAME 的区别
最近在开发站群软件,用到了根据访问域名判断子站点的相关问题。PHP获取当前域名有两个变量 HTTP_HOST 和 SERVER_NAME,我想知道两者的区别以及哪个更加可靠。 首先我想说,百度上那些转来转去的文章都是扯淡! 有说相同的,有说不同的,都没说明原因,没经过验证就互相转来转去的,浪费观众时间。 下面说说本人经过亲自验证 + 查阅官方文档 + 官方BUG列表 + 官方邮件列表 + si转载 2017-11-13 10:28:01 · 466 阅读 · 0 评论 -
PHP获取当前位置
<?php//{"code":0,"data":{"ip":"210.75.225.254","country":"\u4e2d\u56fd","area":"\u534e\u5317",//"region":"\u5317\u4eac\u5e02","city":"\u5317\u4eac\u5e02","county":"","isp":"\u7535\u4fe1",//"country_原创 2017-11-13 17:52:33 · 5471 阅读 · 0 评论 -
php获取当前ip地址信息
<?php$ip = $_SERVER["REMOTE_ADDR"];$ipaddress = send_post("http://ip.taobao.com/service/getIpInfo2.php", array('ip'=>$ip));$shengfen = "";$shi = "";if (!empty($ipaddress) && trim($ipaddress) != ''原创 2017-11-25 10:55:21 · 4135 阅读 · 0 评论 -
微信 静默 授权登录 获取openid 实现方法
N年前用的微信登录,一直以来都用的显式登录,就是会出现一个页面,给你个确定按钮点击确定授权登录。半年前有朋友来找我,说到静默登录,期间有研究过,现在刚好用到,乘热打铁,给大家讲解下如何使用。解决方案//判断是在微信里面打开 if (strpos($_SERVER['HTTP_USER_AGENT'], 'MicroMessenger') == true) { ...转载 2018-03-14 12:05:44 · 2731 阅读 · 0 评论 -
php远程下载网络图片
class Spider { public function downloadImage($url, $path='imagesjpg/') { $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER...原创 2018-04-01 15:13:25 · 899 阅读 · 0 评论 -
图片裁剪为圆形(.png)
function test($url, $path = './',$w = 162,$h = 162) { $original_path = $url; $dest_path = $path; $src = imagecreatefromstring(file_get_contents($original_path)); $n...原创 2017-10-28 09:06:51 · 2462 阅读 · 0 评论 -
七牛上传 网路图片
require __DIR__."/../../php-sdk-7.2.6/autoload.php"; use Qiniu\Auth;use Qiniu\Storage\BucketManager;$url="http://afds.fds.fsad/fdsa.jpg";$houzhui=getimgsuffix($url);$key = 'images/'.date("Ymd"...原创 2018-07-19 17:53:29 · 781 阅读 · 0 评论 -
php图片放大
function resizeImage($srcImage,$maxwidth,$maxheight,$name){ list($width, $height, $type, $attr) = getimagesize($srcImage);// if($width < $maxWidth || $height < $maxHeight) return ; switch转载 2017-10-28 08:59:05 · 3231 阅读 · 0 评论