PHP 8.3 新特性: 动态访问类常量及 Enum 成员
PHP 8.3 以后支持使用变量名访问类常数以及Enum 对象。class MyClass { public const MY_CONST = 42; } $constName = 'MY_CONST'; echo MyClass::{$constName};PHP 8.3 之前,ClassName::{$varName} 语法获取类常量是不允许...
PHP 8.3 功能: json_validate 函数
PHP 8.3 添加了一个名为 json_validate 的新函数,用来返回true或false以判断给定的字符串是否是有效的JSON字符串。PHP 8.3 之前,判断给定字符串是不是有效的 JSON 字符串的唯一方法是,尝试解码该字符串,看看是否会产生错误。新的 json_validate 函数底层使用了同一个 JSON 解析器,不过内存使用量更少且像j...
如何延长老版PHP应用的生命周期
PHP 正在稳步发展。每年都会有一个主要的新版本,其中包含新功能、性能改进、相当多的弃用,甚至语法更改。PHP核心开发人员维护两个最新的PHP版本,其中包括活动的bug修复和安全修复,然后是安全修复。这实际上意味着每个主要的PHP版本最多支持三年,现有的PHP应用就要被迫升级。虽然更新现有的PHP应用是理想和推荐的方法,但不可避免的是,有些应用程序/网...
Go语言 1.20 版本正式发布
最新的 Go 版本 1.20 在 Go 1.19 发布六个月后发布。 它的大部分更改都在工具链、运行时和库的实现中。 一如既往,该版本保持了 Go 1 的兼容性承诺。 我们期望几乎所有的 Go 程序都能像以前一样继续编译和运行。语言的变化Go 1.20 包括对语言的四个更改。Go 1.17 添加了从切片到数组指针的转换。 Go 1.20 扩展了它以允许从切片...
[Laravel 扩展包] Laravel Smart Ads —— 基于Laravel 的广告、Banner及插图管理器
Laravel Smart Ads 是一个基于 Laravel 的广告,Banner 及插图的管理器。你可以使用该扩展包创建广告,并使用提供的 Javascript 和 Blade 组件将其放置到你的网站中
非正统 Eloquent
Eloquent 是一款锋利的工具,受到许多人的喜爱。它允许您轻松地执行数据库操作,同时维护一个易于使用的 API。正如 Fowler 在 PoEAA 中所描述的,实现主动记录(AR)模式是当今可用的最好的 AR 实现之一。在这篇文章中,我想回顾一下我在尝试使用不同选项的过程中学到的一些技巧和窍门。例如,你有没有考虑过以这样或那样的方式分享你的 eager ...
Laravel 最佳实践
内容单一职责原则保持控制器的简洁使用自定义Request类来进行验证业务代码要放到服务层中DRY原则 不要重复自己使用ORM而不是纯sql语句,使用集合而不是数组集中处理数据不要在模板中查询,尽量使用惰性加载注释你的代码,但是更优雅的做法是使用描述性的语言来编写你的代码不要把 JS 和 CSS 放到 Blade 模板中,也不要把任何 HTML 代码放到 PH...
Linux 定时任务 crontab 命令
“crontab 命令来自于英文词组“cron table”的缩写,其功能是管理定时计划任务。定时计划任务,故名意思就计划好的任务,到了时间就会自动执行,在 Linux 系统中的 crond 是一个定时计划任务服务,用户只要能够按照正确的格式(分、时、日、月、星期、命令)写入到配置文件中,那么就会按照预定的周期时间自动的执行下去,而 crontab 命令则是用于配置的工具名称。