nadirlc / utilities-framework
提供实用函数的Php类集合
Requires
- php: ^7.2
This package is auto-updated.
Last update: 2020-08-11 05:24:00 UTC
README
介绍
实用框架是一组Php库,提供错误处理、日志记录、电子邮件、抓取网页、脚本分析、数据库抽象、加密、模板引擎等函数。它需要Php 7.2及以上版本。这些库易于使用,可以与自定义应用程序和Php框架一起使用。
实用框架的代码全部注释,符合PSR-2编码规范。
功能
实用框架具有以下功能
-
数据库管理
它提供与数据库交互的函数。它包括查询构建器、数据库缓存管理器和数据库日志管理器。它还提供基于PDO的数据库元查询运行器和数据库事务管理器。
-
方法验证
该功能允许将方法参数值与方法的Doc Block注释中的信息进行验证。此功能由注释管理器包提供。
-
错误管理
它允许使用HTML模板文件显示应用程序错误。模板文件可以轻松自定义。默认模板文件用于显示浏览器和命令行中的格式化错误消息。
-
文件和文件夹管理
它提供获取URL内容、检查网络连接是否正常、按文件夹搜索文件以及递归复制文件夹内容的函数。
-
电子邮件处理
它提供以纯文本格式和HTML格式发送电子邮件的函数,并支持附件。它基于Pear Mail库,因此支持通过SMTP服务器、Php邮件函数和Sendmail库发送电子邮件。
-
日志管理
它提供将日志数据保存和更新到数据库的函数。它使用PDO库来保存数据,因此可以将日志数据保存到所有由PDO支持的数据库。
-
模板引擎
它提供了一个模板引擎,允许将HTML布局代码与数据分离。它还允许模板递归构建。这意味着一个模板可以由一个或多个模板组成,这些模板可以包含更多模板。这允许将复杂的网站布局分成简单的布局文件,这些文件由模板引擎自动组合。
-
加密
它提供使用新的LibSodium库加密和解密数据的功能,该库是Php >= 7.2的一部分。
-
字符串工具
它提供将数据导出为RSS格式、将相对URL转换为绝对URL、检查字符串是否为有效的JSON、HTML或Base64编码等功能。
-
分析器
它允许在函数调用之间测量内存使用和执行时间。
-
缓存管理器
它允许将数据存储在缓存中。它支持内存缓存和数据库缓存。
-
身份验证
它提供使用HTTP摘要身份验证验证用户的功能。
以下截图显示了错误处理组件显示的错误消息。
以下截图显示了错误处理组件显示的MySQL查询日志,作为错误的一部分。
安装
-
使用Composer安装
运行命令:composer require nadirlc/utilities-framework
或者
-
从Utilities Framework GitHub仓库下载
运行命令:git clone https://github.com/nadirlc/utilities-framework.git
用法
可以通过工厂函数访问Utilities Framework的所有组件。要使用功能,我们首先需要创建相关组件的对象。例如:UtilitiesFramework::Factory("email", $parameters);。要发送电子邮件,可以使用以下代码:
/* The Email class requires Mail and Mail_Mime pear package */
include_once ("Mail.php");
include_once ("Mail/mime.php");
/* Change the from and to emails to your email address */
$from_email = "nadir@dev.pakjiddat.pk";
$to_email = "nadir@dev.pakjiddat.pk";
/** The parameters for the email object */
$parameters = array("params" => "", "backend" => "mail");
/* The Email class object is fetched */
$email = UtilitiesFramework::Factory("email", $parameters);
/** The email is sent */
$is_sent = $email->SendEmail($from_email, $to_email, "Utilitiesframework Test",
"<h3>test html content</h3>",
null,
array("file-path")
);
/** If the email was sent, then information message is shown */
if ($is_sent) echo "Email was successfully sent";
else echo "Email could not be sent";
示例
/examples文件夹包含每个组件的示例用法。