Filament V3 已发布!
Filament v3 已经发布!这是一次大的版本更新,伴随许多新特性和改进。团队已经对项目中的每一个 Blade 模板的设计进行更新。此外,Filament 现在要求 Laravel 9+ 而非原来的 8+、Livewire 3 而非 Livewire 2 以及 PHP 8.1+。# Action 模态框,随处使用打开模态框,在页面的任何按钮中滑出。即使在...
创建自己的 PHP 模板引擎 - 渲染 & Echo
我们来创建一个小型 PHP 模板引擎!本文主要关注模板的渲染及 echo 输出能被 htmlspecialchars() 转义的数据。在我们开始编写代码之前,我们需要注意任何编程项目中最重要的部分——为项目命名。我将称之为“Stencil”。模板本身都将是纯PHP。我们不会创建任何像 Twig 或 Blade 这样的特殊语法,我们将只关注模板功能。我们将从创...
使用 Browsershot 生成 PDF 发票
开发票很无聊,手动写发票更是如此,这就是为什么你应该在应用程序中自动化整个过程。发票是任何业务中非常重要的一部分。通过让你的 Laravel 应用程序自动生成发票,你可以让你的用户的生活变得更轻松,我们都知道这意味着他们会呆得更长,更热衷于使用你的应用程序。在本文中,我将向您展示如何使用 Spatie 的 Browsershot 包自动生成发票PDF。继续阅...
使用 GoLang 协程处理 Laravel 队列任务
Laravel 包含一个优秀的队列组件,它允许我们将耗时的任务委派给后台进程。它使我们能够更快地响应请求,从而处理更多的请求,从而扩展我们的 web 服务。队列进程,无论优化得多么好,一次只能处理一个作业。这意味着我们需要更多的进程来同时处理更多的工作。每个工作进程都是一个 PHP 进程,每个进程都通过拥有自己的内存空间而与其他进程隔离。如果我们启动过多的进...
Laravel 及 ChatGPT "函数调用" 的使用
最近,OpenAI 发布了一个 ChatGPT 更新,引入新特性,使开发者可以描述语言模型函数 - gpt-4-0613 和 gpt-3.5-turbo-0613。这些特性允许生成包含参数的JSON对象,以便根据用户输入运行这些函数。让我们来探讨一下这个新功能的示例。您可以使用它来获取有关IP地址、以前的订单、常见问题解答中的信息、天气预报或任何其他所需信息...
centos7 设置SSH密钥登录
SSH密钥提供了一种简单、安全的方式来登录服务器,建议使用。使用后可以免输密码的登录centos7服务器。创建 RSA 密钥对第一步是在客户端(你管理服务器用的电脑)上创建密钥对:ssh-keygen然后直接enter enter enter。windows使用cmd、powershell(推荐)linux直接终端输入即可。它会在你的用户目录下创建一个.ss...
centos7 解决连接服务器SSH很慢问题
centos7连接服务器SSH慢的原因UseDNS服务开启。开启后,服务端会先根据客户端IP进行DNS PTR反向查询,得到客户端主机名。再根据得到的客户端主机名进行DNS正向A记录查询,最后比对得到的IP与原始IP是否一致,用以防止客户端欺骗。通常情况下,客户端使用的都是动态IP,没有相应的PTR记录。所以,该特性开启后,不仅无法用于信息比对,反而由于相关...
centos7 安装libzip1.9.2解决 No package 'libzip' found
在编译php8.1.3的时候遇到了No package 'libzip' found,看了下报错,是需要libzip>= 0.11,而yum install的是0.10版本,在发文日看见最新版本为1.9.2,故本文详解如何安装lizip1.9.2。卸载老版本的libzip: yum remove libzip libzip-devel
宝塔 PHP 8.1 安装 zip 扩展
如果你没有启用 zip 扩展,则需要在宝塔中进行安装,并且在 php.ini 中启用安装 libzip-1.2.0 你可以在任意的路径下载libzip-1.2.0.tar.gz,然后解压缩,进入libzip-1.2.0,编译安装即可 wget https://libzip.org/download/libzip-1.2.0.tar.gz tar -zxvf libzip-...