I'm trying to run these command from code, but having some trouble finding out how.
php composer.phar dump-autoload -o
php composer.phar require 'vendor/some-package'
php composer.phar update 'vendor/some-package'
EDIT
Forgot to mention, that I don't want to use the exec function because of potential risk and the fact that's blocked on most servers by default.
I did manage to download the .phar file from code, but not how to run these commands. I'm trying to build a friendly as possible solution and don't want use to dumpautoload manually after installing something etc.
Code to download
$composerPath = base_path('composer.phar');
copy('https://getcomposer.org/composer.phar', $composerPath);
I have found a working solution. You can call these command with Symphony's process component.
$process = new \Symfony\Component\Process\Process('php composer.phar autoload-dump');
$process->setWorkingDirectory(base_path());
$process->run();
Worked it out into a class: https://codeneverlied.com/using-composer-from-code/
you can runcomposer global require "laravel/envoy=~1.0"
to bring Laravel's envoy package into your project. With envoy you can write something like
@servers(['localhost' => '127.0.0.1'])
@task('foo', ['on' => 'localhost'])
php composer.phar dump-autoload -o
php composer.phar require 'vendor/some-package'
php composer.phar update 'vendor/some-package'
@endtask
but at some point the server will have to run envoy run task
, this is also guessing on your question. You may more elaborate more on what you are trying to actually do.