kerogs/kerogs-php

具有许多功能的简单帮助库。

1.4 2024-09-22 23:17 UTC

This package is not auto-updated.

Last update: 2024-09-22 23:21:59 UTC


README

安装

composer require kerogs/kerogs-php

如何使用

要使用该包,您首先需要从vendor文件夹导入autoload.php文件。

完成此操作后,您可以使用您感兴趣的部分。

require_once '/vendor/autoload.php';

use Kerogs\KerogsPhp\[name];

注意

[name] 替换为您要使用的名称。您可以参考下面的列表。

列表

注意

所有请求的加密密钥均为AES-256-CBC格式

Kerogs\KerogsPhp\Key

使用Key()类来生成唯一密钥。

使用示例

require_once '/vendor/autoload.php';

use Kerogs\KerogsPhp\Key;
$key = new Key(1);

echo $key->keyGeneration(16);

初始化密钥时,您必须指定您将要使用的字符字符串类型。这将以数字表示。

    private static $keyTypes = [
        1 => "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_-( )'!@#$%^&*",
        2 => "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_-( )'!",
        3 => "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_-( )",
        4 => "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_-",
        5 => "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789",
        6 => "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ",
        7 => "abcdefghijklmnopqrstuvwxyz",
        8 => "0123456789",
        9 => "abcdefghijklmnopqrstuvwxyz0123456789"
    ];

函数列表

Kerogs\KerogsPhp\Logs

您可以轻松创建自己的日志,并在需要时加密它们。

使用示例

require_once '/vendor/autoload.php';

use Kerogs\KerogsPhp\Logs;

const LogsKey = 'abcd-efgh-ijkl-mnop';
$logs = new Logs(LogsKey, true);

$logs->addLog(null, "User successfully logged in", 200, "INFO", false, true);

在示例中,我们通过指定一个密钥(如果需要,此密钥将用于加密和解密日志内容)初始化该类。然后,我们通过true表示我们希望加密日志文件。

然后我们简单地添加日志。

重要

日志密钥必须为16字节格式,如下所示。

如果我们没有为addLog()函数指定日志路径(通过将其指定为null),则将在服务器根目录自动创建一个名为kp_server.log的文件。

还值得了解

  • 当文件加密时,它将以[fileName].log.kpc的名称出现。
  • 当文件解密时,它将以[fileName].log的形式出现。

函数列表

addLog()

向文件添加日志条目。

addLog(
    string $pathLogs = null,
    string $message = "-",
    int $statusCode = 200,
    string $logType = "INFO",
    bool $logIp = false,
    bool $logRequestData = false
):
encryptDecryptFile()

加密或解密日志文件。

encryptDecryptFile(string $filePath, bool $encrypt): void

Kerogs\KerogsPhp\Sendmail

您可以无需重写代码即可直接发送电子邮件。

使用示例

require_once __DIR__.'/vendor/autoload.php';

use Kerogs\KerogsPhp\Sendmail;

const from = "froms@example.com";
const to = "to@example.com";

$sendmail = new Sendmail(from);

if($sendmail->sendMail(to, "Subject test", "hello world")))
    echo "Email sent successfully";
else
    echo "Email not sent";

默认内容类型为text/HTML

Kerogs\KerogsPhp\Github

允许您从GITHUB仓库检索信息并比较版本。

函数列表

使用示例

require_once __DIR__.'/vendor/autoload.php';

use Kerogs\KerogsPhp\Github;

$github = new Github();

$lastRelease = $github->compareVersions("1.3.17", $github->getLatestRelease("KSLaboratories", "kerogsPHP", false)['name']);

if($lastRelease['same']) {
    echo "KerogsPHP is up to date !";
} else{
    if($lastRelease['comparison'] === 'above') {
        echo "KerogsPHP is outdated ! (above)";
    } else {
        echo "KerogsPHP is outdated ! (below)";
    }
}

Kerogs\KerogsPhp\Algorithm

允许您管理算法

函数列表

使用示例

require_once __DIR__.'/vendor/autoload.php';

use Kerogs\KerogsPhp\Algorithm;

$algo = new Algorithm();

$searchBanana = $algo->searchEngine(['banana', 'apple', 'orange', 'pineapple'], 'banana');

print_r($searchBanana);