web-dev-qa-db-ja.com

WP-CLI - 選択 PHP バージョン

開発サーバーでは、 PHP 5.6&7 ;の共インストールがあります。 nginxは PHP 5.6 で設定されています。 「wp」と入力するといくつかのエラーが返され、エラーの最後に次の内容のメッセージが表示されます。

PHPインストールには、WordPressに必要なMySQL拡張機能がありません。

Wp --infoと入力すると、以下が返されます。

PHPバイナリ:/usr/bin/php7.0
PHPバージョン:7.0.10-2 + deb.sury.org〜正確さ+ 1
使用したphp.ini:/etc/php/7.0/cli/php.ini
WP-CLIのルートディレクトリ:phar://wp-cli.phar
WP-CLIパッケージdir:
WP-CLIグローバル設定:/srv/www/wp-cli.yml
WP-CLIプロジェクト構成:
WP-CLIのバージョン:0.26.0-alpha-5672b63

WP-CLIはPHP 7にデフォルト設定されているようですが、PHP 5.6を使用することをお勧めします。

それで、どのPHPバージョンを使用するかを選択するために設定ymlファイルに追加できるオプションがあるかどうか疑問に思いましたか?

それ以上の情報が必要な場合は、私に知らせてください

3
j03

同じ問題を抱えた! PHPのバージョンを切り替えるだけです。私のサーバーではPHP5.6がApacheのデフォルトでしたが、CLIはPHP7.1で設定されていました。 wp --infoでWP-CLIをインストールした後、私はこの結果を得ました:

PHP binary: /usr/bin/php7.1
PHP version: 7.1.5-1+deb.sury.org~xenial+1
php.ini used: /etc/php/7.1/cli/php.ini
WP-CLI root dir: phar://wp-cli.phar

そして、私がwp core installコマンドを使用したとき、私はエラーを得ました:あなたのPHPインストールはWordPressによって必要とされるMySQL拡張を欠いているようです。問題は、異なるバージョン間の混在です。完全に5.6または7.1に切り替えるだけです。私の場合、問題はシェルに書くことによって解決されました。

Sudo update-alternatives --set php /usr/bin/php5.6

そしてwp --info

PHP binary: /usr/bin/php5.6
PHP version: 5.6.30-10+deb.sury.org~xenial+2
php.ini used: /etc/php/5.6/cli/php.ini
WP-CLI root dir: phar://wp-cli.phar

問題が解決しました! WP-CLIは魅力的に働きました。

4
madaritech

あなたのLinuxシェルで環境変数を設定することによって、WP-CLIが使うphpバイナリを設定することができます。

export WP_CLI_PHP=/path/to/php5.6
4
TheGentleman

デフォルトのPHPバージョンを変更する必要があるようです。

php -vが7を返すとします。

PATHを変更する必要があります。

これを参照してください: https://stackoverflow.com/questions/31206864/use-different-php-version-cli-executable-for-one-command

またはこれ: https://wp-cli.org/docs/installing/#using-a-custom-php-binary

0
Shiv