inanepain / inane
此包已被弃用且不再维护。作者建议使用 inanepain/stdlib 包。
提供:文件元数据、支持断点续传的 http 文件服务器、枚举、zf2 配置读取器、观察者模式、zf3 自定义配置自动加载和字符串工具、数组合并
0.30.2
2023-05-03 11:16 UTC
Requires
- php: >=8.1
- laminas/laminas-http: *
- psr/container: *
Replaces
README
$Id$ ($Date$)
有关 Inane 类的简要说明,请查看 InaneClasses Wiki。随着时间的推移,将逐步完善。但不要抱有太大的期望。如果您需要特定内容...请提出!
如果您想查看迄今为止走过的道路,请查看 CHANGELOG。
安装 Inane Classes
要求
- PHP >= 8.0
- laminas/laminas-http >= 2.8
安装
php composer.phar require inanepain/inane
或者
添加到 composer.json
中的内容
"require": { "inanepain/inane" : ">=0", }
然后简单地运行
php composer.phar update
配置
LogTrait
数据库
CREATE TABLE `logs` ( `id` int(11) unsigned NOT NULL AUTO_INCREMENT, `priority` int(11) unsigned DEFAULT NULL, `priorityName` varchar(10) DEFAULT NULL, `timestamp` datetime DEFAULT NULL, `message` text, `extra_route` varchar(100) DEFAULT NULL, `extra_user_id` int(11) unsigned DEFAULT NULL, `extra_session` varchar(15) DEFAULT NULL, `extra_ip_address` varchar(20) DEFAULT NULL, `extra_file` varchar(200) DEFAULT NULL, `extra_line` int(11) unsigned DEFAULT NULL, `extra_class` varchar(45) DEFAULT NULL, `extra_function` varchar(20) DEFAULT NULL, `extra_options` text, PRIMARY KEY (`id`) );
module.php
'factories' => [ 'LogService' => function ($sm) { $logger = new Logger(); $priority = new Priority(getenv('LOG_LEVEL') ?: $logger::WARN); $fileWriterGeneral = new Stream('log/general.log'); $dbWriter = new Db(GlobalAdapterFeature::getStaticAdapter(), 'logs'); $dbWriter->setFormatter(new \Laminas\Log\Formatter\Db('Y-m-d H:i:s')); $fileWriterGeneral->addFilter($priority); $dbWriter->addFilter($priority); $logger->addWriter($fileWriterGeneral); $logger->addWriter($dbWriter); return $logger; }, ]
Dumper
一个简单的转储工具,其折叠的转储整齐地堆叠在页面底部。
选项:Dumper::enabled
将其设置为 false 以停止 Dumper 的所有输出。立即安静。
快速 & 简单
当 Dumper 启动时,它会注册一个全局函数 dd
,这是 Dumper::dump
的快捷方式。在应用的生命周期早期调用一次 Dumper::dumper()
意味着您可以从那时起使用 dd
。
或者,您可以在最适合您的地方创建自己的 dd
函数。
/** * Dumper shortcut * * @param mixed $data * @param string|null $label * @param array $options * * @return \Inane\Debug\Dumper */ function dd(mixed $data = null, ?string $label = null, array $options = []): \Inane\Debug\Dumper { return \Inane\Debug\Dumper::dump($data, $label, $options); }
链式调用
Dumper::dump
一次只能处理一组转储:要转储的项目、可选的标签和选项。要转储多个变量,只需在第一组之后用括号括起来。
例如:
$var1 = someFunction(); $var2 = another($var1); $var3 = again($var1); dd($var1, 'someFunction')($var2, 'another')($var3, 'again');
静默属性
Dumper 有一个可以应用于类和方法的静默属性,以...在类/方法内静默 Dumper。静默类会阻止任何 Dumper 输出,无论类中是否有静默方法。
参数
on
: 默认 -true
。设置静默开或关。
提示
使用全局常量,您可以轻松地从中心点设置状态。
例如:简化代码
// some central place: config.php define('DUMPER_SILENCE_CLASS', false); define('DUMPER_SILENCE_METHOD', true); // IndexDemo.php #[Silence(DUMPER_SILENCE_CLASS)] class IndexDemo { protected function logSilence(): void { dd(DUMPER_SILENCE_CLASS, 'This WILL show since DUMPER_SILENCE_CLASS == false'); } #[Silence(DUMPER_SILENCE_METHOD)] public function indexAction() { $this->logSilence(); dd(DUMPER_SILENCE_METHOD, 'This will NOT show since DUMPER_SILENCE_METHOD == true'); } }
反馈
嘿,有什么想法或建议吗。
给我发邮件 philip@inane.co.za