PHP 8 发布首个 Alpha 版本
按照发布计划,PHP 8 将于今年 11 月 26 日发布,而原定于 6 月 18 日发布的第一个 Alpha 版本跳票到了今天发布。 下载地址:https://downloads.php.net/~pollita PHP 8 是一个新的主...
按照发布计划,PHP 8 将于今年 11 月 26 日发布,而原定于 6 月 18 日发布的第一个 Alpha 版本跳票到了今天发布。 下载地址:https://downloads.php.net/~pollita PHP 8 是一个新的主...
外国科技媒体 Phoronix 发布了针对 PHP 8 的性能基准测试报告。由于 PHP 8 Alpha1 大约要到6月中旬才发布,所以 Phoronix 从 PHP 8 最新的 Git 代码(截至5月底)构建了用于测试的版本。PHP 8 ...
通常来说,不管使用什么数据库,表里都有一个名为 id 的主键,既然是主键,那么必然要满足唯一性,对于 MySQL 用户来说,它多半是一个 auto_increment 自增字段,也有一些别的用户喜欢使用 UUID 做主键,不过对 MySQL...
几乎每一个 PHP 程序员都发布过代码,可能是通过 ftp 或者 rsync 同步的,也可能是通过 svn 或者 git 更新的。一个活跃的项目可能每天都要发布若干次代码,但是现实却是很少有人注意其中的细节,实际上这里面有好多坑,很可能你就...
我已经用了一段时间的 Laravel 框架了,期间遇到了不少问题,有一些调试起来着实不太容易,本文筛选出几个,如果能让大家少走一些弯路,那我就算没白写。 报错:「Can’t swap PDO instance while wi...
说起 IoC,其实是 Inversion of Control 的缩写,翻译成中文叫控制反转,不得不说这个名字起得让人丈二和尚摸不着头脑,实际上简而言之它的意思是说对象之间难免会有各种各样的依赖关系,如果我们的代码直接依赖于具体的实现,那么...
早些年,我特别喜欢下围棋,每天都会下几盘。那时候日本围棋不仅高手林立,而且风格迥异,比如:小林光一的地铁流,武宫正树的宇宙流等等,不过我最喜欢的棋手当属大竹英雄,他下棋时追求美感,如果棋形不漂亮,那么他宁可认输也绝不玷污棋盘。后来,我成为了...
绝大多数程序员都听说过 Unicode 和 UTF-8,但是清楚它们之间关系的人就不多了,关于这个问题,与其苍白的陈述它们的概念,不如举例子说明来得自然。 我前些天碰到一个需求:随机生成几个汉字。原本我便对编码之类的问题发怵,...
通常修改了 PHP 的配置后,为了让修改生效会执行 reload,而不是 restart,因为有很多前辈告诫过我们,reload 能保证整个过程的平滑性,所谓平滑性指的是在 reload 的过程中,旧的进程在处理完当前请求前不会提前终止。很...
之所以要实现 Schemaless,主要是因为在线 DDL 有很多痛点,关于这一点,我在以前已经写过文章,没看过的不妨看看「史上最LOW的在线DDL解决方案」,不过那篇文章主要以介绍为主,并没有涉及具体的实现,所以我写了一个 Laravel...
虽然早就知道很多人用 Guzzle 爬数据,但是我却从来没有真正实践过,因为在我的潜意识里,抓取是 Python 的地盘。不过前段时间,当我抓汽车之家数据的时候,好心人跟我提起 Goutte 搭配 Guzzle 是最好的爬虫,让我一直记挂在...
现在服务端程序员的主要工作已经不再是套模版,而是编写基于 JSON 的 API 接口。可惜大家编写接口的风格往往迥异,这就给系统集成带来了很多不必要的沟通成本,如果你有类似的困扰,那么不妨关注一下 JSONAPI,它是一个基于 JSON 构...
群里一位大佬上午说了一句箴言:「 世界上没有什么故障是重启解决不了的,如果有,再重启一次。」,结果下午群里就有一位朋友遇到了一个诡异的老版本 PHP 问题:当使用 file_get_contents 抓取网页内容的时候,总是返回空字符串,奇...
我说的事务指的是一般的数据库事务,而不是什么分布式事务之类高大上的概念。听起来很简单,但是即便如此,想实现的优雅一点也不是一件容易的事情。 假设有一个 QA 系统,当用户在上面提问的时候,系统保存问题,然后更新用户的提问数,最后触发一个问...
前些天我介绍了如何通过 Twemproxy 实现 Redis 连接池,进而提升 PHP/Redis 的性能。今天我要介绍一下 ProxySQL,通过它可以实现 MySQL 连接池,进而提升 PHP/MySQL 的性能,实际上原理是差不多的,...
大多数 PHP 程序员从来没有使用过连接池,主要原因是按照 PHP 本身的运行机制并不容易实现连接池,于是乎 PHP 程序员一方面不得不承受其它程序员的冷嘲热讽,另一方面还得面对频繁短链接导致的性能低下和 TIME_WAIT 等问题。 说到...
Twemproxy 可以说是最古老的 Redis 代理软件了,一般来说,引入代理后性能会比没有引入代理时低一些,毕竟代理会导致一些额外的性能损耗,可是 Twemproxy 却会提升性能, 这主要得益于它的 Pipelining 功能可以实现...
如果使用 PHP 解析 XML 的话,那么常见的选择有如下几种:DOM、SimpleXML、XMLReader。如果要解析 XML 大文件的话,那么首先要排除的是 DOM,因为使用 DOM 的话,需要把整个文件全部加载才能解析,效率堪忧,相...
ThinkPHP模型 模型定义 在app目录下创建Model目录,即可创建模型文件 定义一个和数据库表相匹配的模型 use think\Model; class User extends Model { } User会自动匹配对于数据库中的...
因为我崇尚简单,所以我憎恨一切所谓的「重量级」框架,比如「Laravel」,有时候这种憎恨甚至到了偏执的程度,以至于如果我看到简历里写着诸如「精通 Laravel」之类的话,那么便会毫不犹豫的 PASS 掉候选人。不过现在我承认有点喜欢「L...
一台服务器报警了,内存占用过高,奇怪的是集群里其它的服务器都没问题。不过从以往的经验来看:每一个匪夷所思的问题背后,都隐藏着一个啼笑皆非的答案。 首先通过「free -m」确认一下内存情况,发现用掉了 6893M,还剩 976...
说起 Profiler,老派的 PHP 程序员会选 XDebug,新派的 PHP 程序员会选 Xhprof,不过我们公司的服务器上都没装,于是我写了这个「Poor Man PHP Profiler」。 既然不用 XDebug ...
讲 PHP 优化的文章往往都是教大家如何编写高效的代码,本文打算从另一个角度来讨论问题,教大家如何配置高效的环境,如此同样能够达到优化的目的。 pool 一个让人沮丧的消息是绝大多数 PHP 程序员都忽视了池的价值。这里所说的...
1. Opcache 记得启用Zend Opcache, 因为PHP7即使不启用Opcache速度也比PHP-5.6启用了Opcache快, 所以之前测试时期就发生了有人一直没有启用Opcache的事情. 启用Opcache非常简单, 在p...
安装php7.4,如果php-fpm的这几个参数设置不当了,会导致php-fpm启动失败,nginx站点不能解析php文件,报500或404错误。 php-fpm的核心参数配置 [global] pid = run/php-fpm.pid ...
最新评论
好
如果不是 跟分区, 可以卸载设备后, 使用 extundelete 尝试恢复下 另外如果单文件被删除,并且 inode 节点未释放, 可以去 /proc/ 下把文件复制出来.
跟SSD硬盘4K对齐差不多呀.