PHP can not perform soap call from laravel command

General Tech Bugs & Fixes 2 years ago

0 2 0 0 0 tuteeHUB earn credit +10 pts

5 Star Rating 1 Rating

Posted on 16 Aug 2022, this text provides information on Bugs & Fixes related to General Tech. Please note that while accuracy is prioritized, the data presented might not be entirely correct or up-to-date. This information is offered for general knowledge and informational purposes only, and should not be considered as a substitute for professional advice.

Take Quiz To Earn Credits!

Turn Your Knowledge into Earnings.

tuteehub_quiz

Answers (2)

Post Answer
profilepic.png
manpreet Tuteehub forum best answer Best Answer 2 years ago

 

I have made a Laravel command that I try to run with a cronjob every minute.

In the command there is some logic that does a soap call. When I run the command through a route that I created everything works fine.

like this:

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

Now when I try to do the same thing in my command on the server like this:

php artisan updateRegisterLogs

I get the following error:

Class 'SoapClient' not found

Now I searched on the internet and in my php.ini I removed the ; before extension=php_soap.dlland before extension=php_openssl.dll and I've restarted my apache and unfortunately I get the same error.

I am now sure what is going wrong here since my code works but not when executed with artian.

profilepic.png
manpreet 2 years ago

Usually php has various php.ini configuration files, typically located on paths like, /etc/php/7.2/cli/php.ini or /etc/php/7.2/fpm/php.ini so from the problem you are having my guess is that you have uncommented the extension on one of those config files but not the cli path one.

If you have for example the application being served using nginx and phpfpm the php.ini file that will determine what modules are enabled when executing php for those requests will be the one located at /etc/php/7.2/fpm/php.ini. When you execute artisan commands the "selected" config file is the one at /etc/php/7.2/cli/php.init


0 views   0 shares

No matter what stage you're at in your education or career, TuteeHub will help you reach the next level that you're aiming for. Simply,Choose a subject/topic and get started in self-paced practice sessions to improve your knowledge and scores.