cavo789/php_helpers

一些帮助工具,以便在PHP 7中更快地开发

dev-master 2021-11-01 21:37 UTC

This package is auto-updated.

Last update: 2024-09-29 05:08:31 UTC


README

Banner

一些帮助工具,以便在PHP 7中更快地开发

目录

构建 & 测试

确保依赖项是最新的

composer update

在开发阶段,为了确保包有效,请运行以下命令。这将检查 composer.json 文件是否正确设置。

composer validate

要本地测试包,而无需发布 Packagist 的新版本,只需在提示符中执行以下命令。这将创建(或更新)一个 /vendor 文件夹并安装库的新版本。

composer install

在您的项目中安装库

安装通过 composer 完成,只需运行 composer require cavo789/php_helpers

类列表

应用

cavo789\Class\App 旨在提供启用或禁用调试模式等功能,以处理应用程序

此类实现了 LoggerInterface,因此可以公开将信息写入日志文件的方法(归功于 Monolog)。

因为此类可以在同一应用程序的多个脚本中实例化,所以此类是一个单例:只有一个实例将被实例化并加载到内存中。

如何

use \cavo789\Classes\App as App;

// true = enable the debug mode
$app = App::getInstance(true, ['folder' => __DIR__.'/logs']);

$app->debug('This is a debug message');
$app->info('This is a information');

依赖 monolog/monolog

错误

捕获所有异常并使用漂亮的 HTML 模板显示消息。

只需在应用程序的非常开始处实例化此类即可。

use \cavo789\Classes\Error as Error;

$error = new Error("<h1>Houston we' ve a problem</h1>" . PHP_EOL .
	'<h2>Error {{ error_code }} - {{ error_title }} encountered</h2>' . PHP_EOL .
	'<div style="font-color:red;">{{ error_message }}</div>' . PHP_EOL .
	'<hr/>' . PHP_EOL .
	'<div>Please email us</div>');

throw new \RuntimeException('Action not supported');

注意:您还可以使用模板文件 $error = new Error("templates/error.html");

会话

cavo789\Class\Session 旨在提供处理 $_SESSION 对象的功能

因为此类可以在同一应用程序的多个脚本中实例化,所以此类是一个单例:只有一个实例将被实例化并加载到内存中。

如何

use \cavo789\Classes\Session as Session;

$session = Session::getInstance('MyApp_');
$session->set('Password', md5('MyPassword'));

echo '<pre>'.print_r($session->getAll(), true).'</pre>';

if ($session->get('Password', '') === md5('MyPassword')) {
    echo 'Great, correct password';
}

unset($session);

帮助工具

帮助工具列表

数组帮助工具

用于处理数组的通用帮助函数。

调试

快速调试帮助工具。

方法 enable()

轻松配置 Apache 以在屏幕上显示错误并输出所有内容(注意、警告、... 错误)。

例如,将以下两行放入您的 PHP 脚本的第一行。

use \cavo789\Helpers\Debug;

Debug::enable();

完成后,通知、警告、... 将在屏幕上输出。

枚举

枚举帮助工具。

文件

文件和文件夹的通用帮助工具。

HTML

HTML 帮助工具。

字符串

字符串的通用帮助工具

模板

使处理 html 模板更加容易。

许可证

MIT