带参数的 Symfony 自定义助手

Symfony Custom helper with parameters

我正在开发一个 Symfony 应用程序,我需要将帮助程序编码为服务。首先,我定义了 3 个常量作为参数,以便在所有 Web 应用程序中使用它们

这是部分参数内容:

parameters:
    api.public.key: '123456789'
    api.private.key: 'ABCDEFGHI'
    api.timestamp: '1'

现在我要开发我的自定义助手 Utils/ApiHelper.php 但我需要我的助手可以接收这 3 个参数。

我的助手将我的助手定义为这样的服务:

services:
    api.helper:
        class: AppBundle\Utils\ApiHelper
        public: true

您可以将 arguments 添加到您的自定义服务中:

services:
    api.helper:
        class: AppBundle\Utils\ApiHelper
        public: true
        arguments: ['%api.public.key%', '%api.private.key%', '%api.timestamp%']

然后将其作为构造函数参数传递:

class ApiHelper
{
    // ...
    public function __construct(string $publicKey, string $privateKey, string $timeStamp)
    {
        // ...
    }
}