Laravel 学习笔记:本地化

通过 Laravel 的样例项目也应该能看到 Laravel 对本地化多语言的支持代码了。 观察一下项目的目录结构就能猜出来语言文件在 resources/lang 中。目录结构需要按照 ISO 15897 标准来命令,简体中文 zh_CN /resources /lang /en messages.php /es messages.php 可以看到所有的语言文件都是返回一个 key-value 结构。 JSON 文件 Laravel 还可以定义 JSON Read more ...


利用 Cloudflare 和 Gmail 配置域名邮箱的收发

早在 2022 年年初的时候 Cloudflare 就推出了 Email Routing 的服务,在第一时间就从 Google Domains 中迁移到了 Cloudflare,中间好像也没有遇到什么问题,正常的收到域名邮箱的邮件,转发到 Gmail。 Cloudflare Email Routing (beta) is designed to simplify the way you create and manage email addresses, without needing to keep an eye on additional m Read more ...


使用 ed25519 SSH Key 代替 RSA 密钥

什么是 ed25519 ed25519 是一个相对较新的加密算法,实现了 Edwards-curve Digital Signature Algorithm(EdDSA)。但实际上 ed25519 早已经在 5 年前就被 OpenSSH 实现,并不算什么前沿科技。但很多人,即使是每天都使用 SSH/SCP 的人可能并不清楚这个新类型 key。 不过要注意的是并不是所有的软件目前都实现了 ed25519,但是大多数最近的操作系统 SSH 都已经支持了。 ed25519 的好处 相较于 RSA key,最明显的一个好处就是 ed25519 ke Read more ...

2022-04-05 ssh , ssh-keygen , key

Laravel 学习笔记:Model Factoris 批量创建假数据

在开发环节要测试的时候,如果想要在数据库中批量插入一些假数据,这个时候就可以使用 model factories。 在 database/factories/ 目录下面默认定义了一个 UserFactory.php namespace Database\Factories; use Illuminate\Database\Eloquent\Factories\Factory; use Illuminate\Support\Str; class UserFactory extends Factory { /** * Defin Read more ...

2022-04-05 laravel , database , fake

Laravel 学习笔记:分页

Laravel 的分页实现集成了 Query Builder 和 Eloquent ORM,提供了一种非常方便的分页接口。 基础使用 最简单的方式就是使用 query builder 和 Eloquent query 的 paginate 方法,这个方法会自动处理请求的 limit 和 offset 参数。 默认情况下,当前页面的参数使用 page 表示。 所以在 Controller 中直接指定一页请求的条数即可: <?php namespace App\Http\Controllers; use App\Http\Control Read more ...

2022-04-04 laravel , php , laravel-pagination

Laravel 学习笔记:Model 之间关系

Laravel 使用的 Eloquent ORM 中的 Model 可以用一种非常易读的方式去定义 Model 和 Model 之间的关系。 1 对 1 关系 比如 User 和 Phone 都是一个 Model,要去表示用户和 Phone 的关系,可以: <?php namespace App\Models; use Illuminate\Database\Eloquent\Model; class User extends Model { /** * Get the phone associated with Read more ...

2022-04-03 laravel , orm , laravel-orm , php

Laravel 学习笔记:事件

Laravel Event 提供了一个最简单的观察者模式实现,可以订阅监听应用中发生的事件。事件通常放在 app/Events 目录,监听器放在 app/Listeners。 事件是应用功能模块之间解耦的有效方法。单个事件可以有多个监听器,监听器之间相互没有影响。 比如说每次有订单产生时,发送给用户一个 Slack 通知,通过事件,可以将处理订单的代码和 Slack 通知代码解耦,只需要发起一个事件,监听器监听订单产生事件,然后触发响应的动作即可。 注册事件/监听器 可以使用如下的命令创建 Event php artisan event:gen Read more ...


Laravel 学习笔记:队列

当需要构建一个网络应用的时候,可能有一些任务,比如解析、存储、传输 CSV 文件等等,可能需要花费较长的时间。Laravel 提供了一个非常简单的队列 API,可以让这些操作可以在后台进行。让这些繁重的任务在后台执行可以有效的提高应用的响应速度,提升用户使用体验。 Laravel 队列提供了一个统一的 API 访问入口,可以支持不同的队列: [[Amazon SQS]] [[Redis]] [[Beanstalk]] 甚至关系型数据库 Laravel 队列的配置在 config/queue.php 中。 Laravel 还提供 Read more ...


Laravel 学习笔记:发送邮件

在我最初的设计中一共有两个地方需要发送邮件: 第一就是用户注册,发送邮件激活 第二就是当用户订阅一个书单的时候,自动给所有订阅的用户发送带有附件的电子书到其设定的邮箱中 所以接下来就记录一下使用 Laravel 发送邮件。 在 Laravel 中发送邮件并不是那么复杂。Laravel 通过 Symfony Mailer 实现了一套非常简洁的邮件 API。 Laravel 中提供了很多种方式来发送邮件: [[SMTP]] 直接配置 SMTP服务器 [[Mailgun]] 通过 Mailgun 等发送邮件的服务提供商 [[ Read more ...

2022-03-29 laravel , email , sendmail , mailer , mailgun , smtp

DMARC 报告

在搭建了自己的邮件服务器之后,经常收到 Gmail 和 Outlook 的 Report,类似: Report domain: example.com Submitter: google.com Report-ID: 73941XXXXX 或 Report Domain: example.com Submitter: protection.outlook.com Report-ID: 200aa9XXXXXXXXXX 所以再整理一下 DMARC 报告。 在之前介绍 DMARC 的文章中介绍过其中 rua 和 ruf 两个配置的作用,这两个配 Read more ...


最近文章

  • Trae 字节推出的一款本地 AI 代码编辑器 前两天看到字节也发布了一款基于 Claude Sonnet 3.5 的 IDE,起名叫做 Trae(这个名字是 The Real AI Engineer 的缩写),对标我之前介绍过的 Cursor,Windsurf 等等代码编辑器,都是以 AI 为切入点,辅助进行编码,不仅可以进行自动代码生成补全,还可以理解上下文,通过超长的 Context 提供多文件生成修改的能力。
  • Tianji 开源的网站流量分析,服务监控系统 Tianji 是一个 All in One 的网站分析(Website analytics),服务监控(Uptime Monitor),业务告警(Server Status)的系统。
  • Cline 强大的 AI 辅助编程工具 之前的文章中介绍过 AI 支持的编辑器 Cursor,还介绍过 Codium 推出的 AI 智能编辑器 Windsurf,很早之前也介绍过如何在 JetBrains IntelliJ IDEA 中使用 GitHub Copilot 以及如何在命令行终端下使用 GitHub Copilot CLI 可以在终端下完成一些 AI 智能补全,提示等等操作。
  • 利用 PirateShip 打单节省美国转运费用 之前因为申请 [[ITIN]] 已经申请了一个 Anytime Mailbox 美国的私人地址,但是如果直接让 Anytime Mailbox 房东转寄邮件,价格非常昂贵,以我自己的经验只邮寄 0.1 磅不到的信件,房东报价就高达 70 美元。所以这篇文章我就总结一下如何与 Anytime Mailbox 的房东进行沟通并让房东使用我们自己提供的邮寄单,将我的物品从美国寄送回来。
  • Mint Mobile 又一家美国移动网络运营商 在之前的一篇文章中,因为在 Mint Mobile 上的商城上购买了 299 美元 Pixel 9 手机,暂时了解到了 Mint Mobile 这家公司,这里再来详细地介绍一下这家公司。