如何在Laravel的Job中使用类SoapClient?

时间:2019-01-09 16:07:47

标签: php laravel soap-client jobs

我有一个使用Laravel Framework(5.7)的WebApp。

在Macbook上,我安装了:

  
      
  1. Php 7.2.1
  2.   
  3. Composer 1.7.2
  4.   
  5. XAMPP 4.4.1
  6.   

当我跑步时:$ php artisan queue:work

一切都很好!我的工作非常完美(它调用了ASP.NET服务上的API-asmx)

但是!!

当我在Linux服务器上部署WebApp时,它不起作用!!!

failed_jobs表中,我看到以下消息:Class 'SoapClient' not found。 当我通过WebBrowser致电(例如:http://my_server_linux_ip/dosomething,就可以了!)

我真的在soap中打开了php.ini扩展名

我的Linux服务器已安装:

  
      
  1. Php 7.2.13
  2.   
  3. Composer 1.7.2
  4.   
  5. Apache2
  6.   

我的composer.json

"require": {
        "php": "^7.1.3",
        ....
}

Php-Soap:

$ apt-cache search php | grep -i soap
libnusoap-php - SOAP toolkit for PHP
php7.0-soap - SOAP module for PHP
python-pysimplesoap - simple and lightweight SOAP Library (Python 2)
python3-pysimplesoap - simple and lightweight SOAP Library (Python 3)
php-soap - SOAP module for PHP [default]
php5.6-soap - SOAP module for PHP
php5.6-soap-dbgsym - debug symbols for php5.6-soap
php7.0-soap-dbgsym - debug symbols for php7.0-soap
php7.1-soap - SOAP module for PHP
php7.1-soap-dbgsym - debug symbols for php7.1-soap
php7.2-soap - SOAP module for PHP
php7.2-soap-dbgsym - debug symbols for php7.2-soap
php7.3-soap - SOAP module for PHP
php7.3-soap-dbgsym - debug symbols for php7.3-soap

我不知道为什么!

救救我!谢谢!

1 个答案:

答案 0 :(得分:0)

如果在服务器上运行php -m,会发生什么?您在那看到SoapClient enabled吗?

如果是,则尝试在服务器上运行composer dump-autoload -o(确保供应商文件夹包含正确的软件包之后)。