web-dev-qa-db-fra.com

Comment mettre à niveau PHP sous Mac OS X?

Je pense que c'est une question terriblement obtuse à poser, mais étrangement, ce problème est mal documenté.

Je voudrais mettre à jour PHP, mais il y a plusieurs problèmes:

  • Il n'y a pas de gestionnaire de paquets intégré. MacPorts ne reconnaît pas php en tant que paquet installé car il n’a pas installé PHP lui-même.
  • Fonctionnement locate php indique qu'il existe probablement de nombreuses dépendances.
  • Je ne sais pas COMMENT php a été installé, car il était inclus dans le système d'exploitation. Je ne sais donc pas si je dois installer à partir du source ou télécharger des fichiers binaires. Je ne connais pas non plus la bonne façon de désinstaller la version précédente sans rompre les dépendances.

Je cours sur Leopard. J'ai le sentiment Apple ne veut pas que vous mettiez à niveau. L'achat de Snow Leopard et la mise à niveau permettraient-ils de résoudre ce problème (et les problèmes à venir similaires)?

98
thebossman

Vous voudrez peut-être consulter le package PHP) de Marc Liyanage. Il est fourni dans un package d’installation agréable pour Mac OS X sur lequel vous pouvez double-cliquer. Il le tient à jour.

http://php-osx.liip.ch/

En outre, bien que la mise à niveau vers Snow Leopard ne vous aide pas à effectuer les mises à jour PHP à l'avenir, cela vous donnera probablement une version plus récente de PHP. J'utilise OS X 10.6.2 et a PHP 5.3.0.

88
Scott Saunders

J'utilise ceci: https://github.com/Homebrew/homebrew-php

La commande est:

$ xcode-select --install

$ brew tap homebrew/dupes
$ brew tap homebrew/versions
$ brew tap homebrew/homebrew-php

$ brew options php56
$ brew install php56

Puis config dans votre .bash_profile ou .bashrc

# Homebrew PHP CLI
export PATH="$(brew --prefix homebrew/php/php56)/bin:$PATH"
51
wangchi

Je pense qu'un moyen simple de le faire est:

1 - Vérifiez où se trouve votre PHP actuel:

$ which php
$ /usr/local/bin/php

Vous voyez? Habituellement, nos commandes que nous exécutons sont un lien dans/usr/local/bin alors ...

2 - Dissocier ce lien actuel de PHP

unlink /usr/local/bin/php

Si vous préférez, avant de le dissocier, vérifiez le chemin puis supprimez les fichiers php (do ls -al /usr/local/bin | grep php puis rm -rf dans le chemin souhaité)

3 - Installer PHP 7.1

curl -s http://php-osx.liip.ch/install.sh | bash -s 7.1

4 - Créer un nouveau lien (en utilisant php 7.1 bin que vous avez installé)

ln /usr/local/php5-7.1.9-20170914-100859/bin/php /usr/local/bin/php

Comme je l'ai dit, c'est un moyen simple, je pense.

13
Paulo Victor

Il n'y a pas de gestionnaire de paquets intégré. MacPorts ne reconnaît pas php en tant que paquet installé car il n’a pas installé PHP lui-même.

Vous pouvez toujours l'installer avec MacPorts. Sudo port install php52 (ou la version de votre choix) installera PHP.

La version fournie par Apple ne sera pas écrasée. Il va l'installer sous /opt/local. Vous pouvez ajouter /opt/local au début de votre $PATH, et utilisez la version MacPorts dans votre configuration Apache.

8
mipadi

Option n ° 1

Tel que recommandé ici , ce site fournit un liner pratique et à jour.

Ceci n’écrase pas la version de base de PHP sur votre système, mais l’installe proprement dans/usr/local/php5.

Option n ° 2

Ma méthode préférée est de simplement installer via Homebrew .

6
user456584

Avant de continuer, j'ai la dernière version (v5.0.15) de OS X Server (oui, horrible, je sais .. Cependant, le serveur Web semble fonctionner A-OK). J'ai cherché haut et bas pendant des jours en essayant de mettre à jour (ou du moins de faire pointer Apache) une nouvelle version de PHP. Mon mcrypt ne fonctionnait pas, ainsi que d'autres extensions, et j'ai installé et réinstallé PHP plusieurs fois à partir de http://php-osx.liip.ch/ et d’autres tutoriels jusqu’à ce que j’ai enfin remarqué un peu d’informations écrites dans un commentaire dans l’un des nombreux .conf fichiers conservés par OS X Server qui était que OS X Server charge ses propres fichiers personnalisés .conf fichier avant de charger Apache httpd.conf (situé à /etc/Apache2/httpd.conf). Le fichier du serveur est situé:

/Library/Server/Web/Config/Apache2/httpd_server_app.conf

Lorsque vous ouvrez ce fichier, vous devez commenter cette ligne comme suit:

#LoadModule php5_module libexec/Apache2/libphp5.so

Ajoutez ensuite le chemin correct (qui devrait déjà être installé si vous l'avez installé via le lien http://php-osx.liip.ch/ ):

LoadModule php5_module /usr/local/php5/libphp5.so

Après cette modification, mon PHP a finalement chargé la bonne PHP. Cela dit, si les choses tournent mal, c'est peut-être parce qu'OS X est conçu pour fonctionner l’installation native de PHP au moment de l’installation de OS X. Pour revenir, annulez simplement la modification ci-dessus.

Quoi qu'il en soit, j'espère que cela sera utile à quiconque passera d'innombrables heures à ce sujet.

3
Rasclatt

Vérifiez votre version actuelle de PHP dans le terminal avec la commande suivante,

$ php -v

Vous voyez la version actuelle de PHP dans le terminal, et la commande suivante est exécutée dans le terminal si vous souhaitez mettre à niveau votre version de PHP avec concp avec la version suivante:

$ brew install homebrew/php/php71

Veuillez redémarrer le terminal si vous avez terminé la mise à niveau de la version php installée et exécutez la commande.

$ php -v

Maintenant, vous voyez la version actuelle de PHP dans le terminal .... merci

2
yekyawaung

Économiser sur les frappes au clavier, cela a fonctionné sur MacOS Sierra:

$ brew install homebrew/php/php71

$ /usr/local/opt/php71/bin/php -v
PHP 7.1.4 (cli) (built: Apr 14 2017 15:02:16) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2017 Zend Technologies
2
Cees Timmerman

La mise à niveau vers Snow Leopard ne résoudra pas votre principal problème de maintenance PHP à jour. Apple ne conserve pas toujours le logiciel tiers fourni avec celle-ci. mis à jour avec les mises à jour du système d’exploitation et s’appuyer sur Apple pour vous procurer le correctif de bogue/la mise à jour de sécurité dont vous avez besoin, c’est poser des problèmes.

De plus, je recommanderais d’installer via MacPorts (et de faire la config nécessaire pour l’utiliser à la place du code PHP d’Apple) plutôt que d’essayer de mettre à niveau le Apple fourni PHP en place. Tout ce que vous faites pour /usr/bin _ risque d’être écrasé par un futur Apple update.

2
Dave Bacher

Utilisez cette commande:

curl -s http://php-osx.liip.ch/install.sh | bash -s 7.0
0
Aghaie