fusic/encount

CakePHP 的 Encount 插件

维护者

详细信息

github.com/fusic/encount

源代码

问题

安装次数: 87,406

依赖项: 1

建议者: 0

安全性: 0

星级: 10

关注者: 4

分支: 2

开放问题: 0

类型:cakephp-plugin

5.0.0 2024-02-21 11:52 UTC

README

需求

  • PHP >= 8.1.*
  • CakePHP >= 5.*

安装

您可以使用 composer 将此插件安装到您的 CakePHP 应用程序中。

安装 composer 包的推荐方法是

composer require fusic/encount

使用方法

// config/bootstrap.php
<?php

use Encount\Error\EncountErrorTrap;
use Encount\Error\EncountExceptionTrap;

/*
 * Register application error and exception handlers.
 */
// (new ErrorTrap(Configure::read('Error')))->register();
// (new ExceptionTrap(Configure::read('Error')))->register();
(new EncountErrorTrap(Configure::read('Error')))->register();
(new EncountExceptionTrap(Configure::read('Error')))->register();
// src/Application.php
<?php

use Encount\Middleware\EncountErrorHandlerMiddleware;

$middleware
    // ->add(new ErrorHandlerMiddleware(Configure::read('Error'), $this))
    ->add(new EncountErrorHandlerMiddleware(Configure::read('Error'), $this))

配置

// config/app.php
<?php

return [

-snip-

    'Error' => [
        'errorLevel' => E_ALL & ~E_DEPRECATED,
        'skipLog' => [],
        'log' => true,
        'trace' => true,
        'encount' => [
            'force' => false,
            'sender' => [
                'Encount.Mail',
            ],
            // ignore ex)
            // 'deny' => [
            //     'exception' => [
            //         '\Cake\Http\Exception\MissingControllerException', // 404
            //         '\Cake\Http\Exception\MethodNotAllowedException', // 404
            //         '\Cake\Http\Exception\ForbiddenException', // isAuthorized
            //         '\Cake\Controller\Exception\MissingActionException', // 404
            //         '\Cake\Datasource\Exception\RecordNotFoundException', // notFoundRecored
            //     ],
            // ],
        ],
    ],

-snip-

    'EmailTransport' => [
        'default' => [
        ],
        // Encount Email config
        'encount' => [
            'className' => SmtpTransport::class,
            'port' => xxx,
            'timeout' => xx,
            'host' => 'xxxxxxxxxxxxxxxxx',
            'username' => 'xxxxxxxx@example.com',
            'password' => 'xxxxxxxx',
            'log' => true,
            'tls' => true,
        ],
    ],

    'Email' => [
        'default' => [
        ],
        // Encount Email config
        'error' => [
            'transport' => 'encount',
            'from' => 'from@example.com',
            'to' => 'to@example.com',
            'charset' => 'utf-8',
            'headerCharset' => 'utf-8',
        ],
    ],

-snip-

];

发送者

Encount.Mail

故障线的 Encount 发送者