質問: devel / phpからdrushコマンドを実行するdrupal どなたか、dvel/phpからdrushコマンドを実行する方法を教えていただけますか?phpコードをdevel/phpから実行できます。しかし、dvel/phpからdrushコマンドを実行する方法がわかりません。 )。私はcronの目的でいくつかのカスタムdrushコマンドを記述しました。コマンドラインからこれらのコマンドを実行できます。> drush my-cmd or drush cc all or drush status , etc ... i can run it through command line. 下記の関数がdevel/phpから実行されることを期待していますsome_function("drush cc all");
回答: kalidasanが示唆しているように、exec()関数を使用して、次のようなことを行うことができます。exec("drush fra -y", $output); var_dump($output); 通常、develは、settings.phpが配置されている場所でこのコマンドを実行します。カスタムマルチサイトアーキテクチャがあり、別のパスからdrushコマンドを実行する必要がある場合は、コマンドを( ";"セミコロンを使用して)チェーンできます。正しいパスにアクセスして、drushコマンドを実行します。exec("cd {absolute or relative path to your settings.php site}; drush fra -y;", $output); var_dump($output); ときどき、drush/phpからdrushコマンドを実行すると、drushから機能を実行する必要があるが、コマンドラインシェルへのアクセス権や実行権限がない場合に便利です。注:「drush fra」は例としてのみ使用しました。他のどのdrushコマンドでも使用できます。