PHP无法从laravel命令执行soap调用

问题描述 投票:0回答:1

我做了一个Laravel命令,我尝试每分钟运行一次cronjob。

在命令中有一些做肥皂调用的逻辑。当我通过我创建的路线运行命令时,一切正常。

像这样:

Route::get('test-command', function() {
    Artisan::call('updateRegisterLogs');
});

现在,当我尝试在服务器上的命令中执行相同的操作时,如下所示:

php artisan updateRegisterLogs

我收到以下错误:

找不到“SoapClient”类

现在我在互联网上搜索,在我的php.ini中,我在;之前和extension=php_soap.dll之前删除了extension=php_openssl.dll,我重新启动了我的apache,不幸的是我得到了同样的错误。

我现在确定这里出现了什么问题,因为我的代码可以正常运行,但是当用artian执行时却没有。

php laravel soap artisan
1个回答
0
投票

通常php有各种php.ini配置文件,通常位于路径上,如/etc/php/7.2/cli/php.ini/etc/php/7.2/fpm/php.ini所以从你猜测的问题是你已经取消注释其中一个配置文件的扩展而不是cli路径之一。

例如,如果你有使用nginx和phpfpm提供的应用程序,php.ini文件将确定在为这些请求执行php时启用了哪些模块将是位于/etc/php/7.2/fpm/php.ini的文件。当您执行artisan命令时,“selected”配置文件是/etc/php/7.2/cli/php.init中的配置文件

© www.soinside.com 2019 - 2024. All rights reserved.