simon-downes / spl
Simon的PHP库
dev-master
2023-09-07 21:10 UTC
Requires
- php: ~8.1
- ext-mbstring: *
- ext-pdo: *
- twig/twig: ^3.0
This package is auto-updated.
Last update: 2024-09-07 23:09:10 UTC
README
什么
我收集的PHP 8+应用程序原型设计的实用类库。
为什么
有时候我就是想以老式的方式快速完成事情——快速、直接且有趣。
我不需要覆盖所有可能场景或用例的庞大库,只需要一些简单且足够好的东西。
此外,我喜欢捣鼓代码,所以请别打扰我!🤣
如何
你可能不应该使用,它几乎肯定在许多情况下都有不同程度的损坏(我不关心,但还没有)🤣
composer require simon-downes/spl
概述
一般
以下常量将自动定义
SPL_CLI- 如果在CLI环境中运行则为true,否则为falseSPL_REQUEST_ID- 一个随机的8位十六进制字符串SPL_START_TIME- 请求开始的时间,或(如果不可用)当自动加载器被调用时
初始化特定目录的框架,如果存在,则加载一个.env文件
SPL::init(directory: getcwd(), load_env: true );
这将设置
SPL_ROOT和SPL_DEBUG常量。SPL_DEBUG基于以下值设置
- 环境变量
APP_DEBUG的值- 环境变量
APP_ENV的值(生产环境为false,其他为true)- 如果设置为除了true、false或空字符串之外的任何值则为false
输出变量的调试表示
// dump and continue d($my_var, $my_other_var, ...); // dump and die after... dd($my_var, $my_other_var, ...);
上述命令只有在SPL_DEBUG设置为true时才会输出内容。
在非CLI上下文中调用dd()时,如果没有发送任何头信息,将发送一个text/plain的内容类型头。
获取环境变量的值(或默认值)
env("MY_ENV_VAR_NAME", "Default Value");
显示错误消息/页面
SPL::error($exception);
对于CLI输出,将显示堆栈跟踪。
对于Web输出,如果SPL_DEBUG为true,则显示调试页面;否则显示通用的503错误页面。还会记录堆栈跟踪(请参阅下面的日志记录)。
数据库
日志记录
支持以下级别
DEBUGINFOWARNINGERRORCRITICAL
将消息记录到文件
Log::message(message: "Hello World", level: "INFO", file: = '' );
将输出消息的格式为
Date Time Request-ID [LEVEL] Message
2023-07-13 17:38:10 deee16e2 [INFO] Hello World
file可以是
php- 将输出发送到error_log()- 一个文件名
- 一个空字符串 - 使用
env('APP_LOG_FILE')的值,如果不存在则回退到php
方便的方法
Log::debug(message: "", file: ""); Log::info(message: "", file: ""); Log::warning(message: "", file: ""); Log::error(message: "", file: ""); Log::critical(message: "", file: "");
HTTP请求
待办事项
随机数据
生成一些随机数据
Random::hex(length: 40); Random::string(length: 10 , allowed = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ');
字符串
待办事项