it-swarm.com.de

WP-CLI - Auswahl PHP Ausführung

Auf einem Entwicklungsserver habe ich eine Co-Installation von PHP 5.6 & 7 ; nginx wird mit PHP 5.6 konfiguriert. Wenn ich "wp" eingebe, werden mehrere Fehler zurückgegeben und am Ende des Fehlers wird eine Meldung angezeigt, die Folgendes enthält:

In Ihrer PHP -Installation fehlt anscheinend die für WordPress erforderliche MySQL-Erweiterung.

Wenn Sie wp --info eingeben, wird Folgendes zurückgegeben:

PHP-Binärdatei: /usr/bin/php7.0
PHP-Version: 7.0.10-2 + ​​deb.sury.org ~ exact + 1
verwendete php.ini: /etc/php/7.0/cli/php.ini
WP-CLI-Stammverzeichnis: phar: //wp-cli.phar
WP-CLI-Paketverzeichnis:
Globale WP-CLI-Konfiguration: /srv/www/wp-cli.yml
WP-CLI-Projektkonfiguration:
WP-CLI-Version: 0.26.0-alpha-5672b63

WP-CLI scheint standardmäßig PHP 7 zu sein, ich würde es vorziehen, PHP 5.6 zu verwenden.

Ich habe mich also gefragt, ob es eine Option gibt, die ich zur Konfigurations-yml-Datei hinzufügen kann, um auszuwählen, welche PHP-Version verwendet werden soll.

Wenn Sie weitere Informationen benötigen, lassen Sie es mich bitte wissen

3
j03

Habe das gleiche Problem! Einfach die PHP-Version wechseln. Auf meinem Server war PHP5.6 Standard für Apache, während CLI mit PHP7.1 konfiguriert wurde. Nach der Installation von WP-CLI mit wp --info habe ich folgendes Ergebnis erhalten:

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

Und als ich den Befehl wp core install verwendete, bekam ich den Fehler: Bei Ihrer PHP -Installation fehlt anscheinend die MySQL-Erweiterung, die von WordPress benötigt wird. Das Problem ist nur die Mischung zwischen den verschiedenen Versionen: Wir müssen nur komplett auf 5.6 oder 7.1 umstellen. In meinem Fall wurde das Problem einfach durch Schreiben auf die Shell gelöst:

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

Und dann 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

Problem gelöst! WP-CLI hat wie ein Zauber gewirkt.

4
madaritech

Sie können die von WP-CLI verwendete PHP-Binärdatei festlegen, indem Sie eine Umgebungsvariable in Ihrer Linux-Shell festlegen.

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

Klingt so, als müssten Sie Ihre Standardversion PHP ändern.

Ich gehe davon aus, dass php -v 7 zurückgibt.

Sie müssen den Pfad ändern.

Siehe hierzu: https://stackoverflow.com/questions/31206864/use-different-php-version-cli-executable-for-one-command

Oder dies: https://wp-cli.org/docs/installing/#using-a-custom-php-binary

0
Shiv