PHP 8.5: 新增 get_exception_handler 和 get_error_handler 函数
PHP 允许设置自定义错误和异常处理程序(error/exception handler),当触发错误或异常未被捕获时会调用这些处理程序。同时可以恢复之前的异常和错误处理程序。然而,在 PHP 8.5 之前,没有直接的方法来获取当前设置的错误和异常处理程序。PHP 8.5 添加了两个函数-- get_error_handler 和 get_exception...
在 Spring Boot 中使用 SendGrid 发送邮件
本文中,我们将探索如何在 Spring Boot 应用中使用 SendGrid 发送电子邮件。我们将将介绍必要的配置,并通过不同的用例实现电子邮件发送功能...
在 Laravel 中使用 Auto Eager Loading 全局防止 N+1 问题
当你在 Laravel 中缓存一个值时,会将其存储在缓存存储中(如 Redis、Memcached 等),以便之后检索。这很好,因为它可以防止像数据库查询或 API 调用这样昂贵的操作。use Illuminate\Support\Facades\Cache; Cache::put('name', 'Cherika'); $name = Cache::ge...
Laravel 枚举驱动路由权限
Laravel 通过向 can() 方法添加直接枚举支持简化了路由中的权限检查。这种增强消除了显式访问枚举值属性的需要,从而产生了更清晰、更具表现力的路由定义。当构建权限管理至关重要的管理面板或多租户应用,并且希望利用 PHP 的类型安全功能时,此功能尤其突出。Route::get('/admin', function () { // ... })-...
Laravel 中的一次性电子邮件检测
Laravel 的 Disposable Email 包旨在检测和阻止超过 10 万个已知域名的电子邮件地址。此包提供了多种使用一次性电子邮件检测规则的方法,如验证规则、blade 指令和服务 Facade:use EragLaravelDisposableEmail\Rules\DisposableEmailRule; $request->val...
TIOBE 编程语言排行榜:2025 年 5 月|Python 以 25.35% 雄居榜首
五月头条:Python 雄居榜首。Python 的受欢迎程度上个月又增长了 2.2 %,达到 25.35 %。这 25.35% 是 TIOBE 指数历史上编程语言的最高份额,除了 2001 年 6 月的 Java(这是 TIOBE 指数的第一个月,跟踪的语言要少得多)和 2001 年 10 月的 Java。Python 还打破了另一项记录:这是第一次有一种语言...
Laravel 中的全文搜索
Laravel 通过 whereFullText 和 orWhereFullText 方法,提供了健壮的全文搜索能力,提供了一种相较于 LIKE 语句更复杂的数据查询方法。技术要求支持的数据库:MariaDB、MySQL 或 PostgreSQL目标字段全文(Full-text)索引对于大数据量系统,请考虑使用 ElasticSearch 或 Meilise...
Filament v4 Beta 版即将发布!嵌套资源、多因素认证等新特性值得期待
Filament v4 是 Filament 有史以来规模最大、功能最丰富的版本。本文将介绍 Filament v4 中的一些新特性:嵌套资源长期以来,Filament 团队一直收到嵌套资源的请求。而这个功能,在 Filament v4 中最终实现了。嵌套资源资源允许你在父资源的上下文中操作给定的 Filament 资源。例如,在开发学...
SQLite 数据类型指南
SQLite 是一个流行的轻量级数据库系统,它将数据存储在单个文件中。它的简单性得益于其灵活的动态类型系统,这与 MySQL、PostgreSQL 或 SQL Server 等其他数据库系统中使用的静态、刚性类型截然不同,后者要求你在创建表时指定数据类型。SQLite 中的数据类型如何工作?在 SQLite 中,创建表时不需要为列指定数据类型。SQLite ...
SQLite vs. MySQL: SQLite 与 MySQL 之间的差异
如果你是开发者或数据库管理员,你几乎肯定会遇到 MySQL,你可能已经使用过它。另一种流行的数据库技术是 SQLite。两者都是关系数据库管理系统(RDBMS),广泛应用于 web 开发、移动应用和其他软件项目。虽然这两种技术都是基于 SQL 的数据存储技术,但它们之间存在许多差异,每种技术都有其优缺点。本文将比较 SQLite 和 MySQL 的理想用例、...