常见的PHP优化方法,让PHP效率更高,抽空更新(很多都是学习网络上的方法,想深度理解建议学C语言。):
字符串的输出最好使用单引号,不要使用双银行,否则PHP会去找是否存在变量需要解析
大数组,对象,资源句柄使用完及时进行unset()
能用系统函数解决的问题尽量不要使用正则表达式,虽然正则表达式逼格高,但是牺牲的是匹配的性能
数组下标$allres['id']的速度比$allres[id]快很多,网上说是7倍,但是我不知道是为什么7倍
对象中的方法能使用static最佳,例如我们在编写工具类的时候,无需实例化即可调用
如果你想知道脚本开始执行(译注:即服务器端收到客户端请求)的时刻,使用 $_SERVER['REQUEST_TIME'] 要好于 time(),我分析的是因为作为超全局变量已经存在信息,我们何必再调用time()
switch case好于使用多个 if,else if 语句,我们无法说明是效率高,但是我比较喜欢的是这种语法,结构清晰,网上也是比较推荐
用 file_get_contents 替代 file、fopen、feof、fgets 等系列方法,例如微信支付中使用该函数来读取证书内容
$a=$b=1远比$a=1;$b=1高效
PHP在编写mysql语句一定要把关键字大写,例如SELECT FROM GROUP BY等,因为你不大写,程序最终还是转大写,你大写了程序就不用转直接执行,取经自李炎恢老师。
使用include或者require引入文件请尽量使用硬路径(即绝对地址),避免PHP引擎查找文件影响速度,学习自李炎恢视频。
数组使用[]创建更节省内存,避免array()函数的消耗
对 global 变量,应该用完就 unset()掉;
使用php函数array_multisort()即可实现和SQL一样的order by排序. 例如我们需要对会员表按照主键降序排列,年龄升序排列://会员表数据 $list = []; $list[] = ['mid' =>&n...
array_merge是最常用的数组合并方法,+号同样也可以,但是却有很大不同。array_merge遇到相同字符串key,后面数组的key会覆盖前面数组的key,+号正好相反。$a = [ 'one' => 'A on...
当我们使用php爬虫采集网站时经常会遇到内容使用ajax异步加载。一般采取的方案是PHP模拟再请求api接口获取数据,但是有时候前端js加密非常麻烦,我们需要将js的加密方法转换为php方法方便curl请求。当然通过了解我们可以通过3种方案解决。第一种:使用phpv8js扩展执行js代码。(pecl...
文章篇幅较长,如果不喜欢看文章的,此处抛出韩顺丰老师的位运算视频,韩老师应该是全网讲php位运算符最详细的一个老师了。链接:https://pan.baidu.com/s/14xj7er8eVSUcJ-jYXyA0GA 提取码:731m 链接:https://pan.baidu.com...
在正式介绍前先抛出一段代码:<?php //输入的密码 $password = empty($_POST['password']) ? 0 : $_POST['password']; //设置的密码...
在调用微信code换openid的接口curl报错curl Received HTTP code 403 from proxy after CONNECT,错误码56。可以看到是curl的代理有问题。然后我自己电脑设置代理去访问curl请求的地址,的确也返回了403,说明代理不允许访问这个地址,联系...