


Supprimez l'ancienne version de php et installez la dernière version de php et Xdebug sous le système mac
Le contenu de cet article concerne la suppression de l'ancienne version de php et l'installation de la dernière version de php et de Xdebug sous le système mac. Il a une certaine valeur de référence. Maintenant, je le partage avec vous. Les amis dans le besoin peuvent s'y référer
Mon système macpro 2015 a la version php5.6.28 installée par défaut. J'ai installé php7.0 et php7.1 en utilisant Brew ou d'autres méthodes en ligne. Cependant, lorsque j'imprime phpinfo(), mon php5 s'est reproduit le 6.28. J'avais l'impression d'avoir un trouble obsessionnel-compulsif et j'ai dû y faire face. J'ai perdu plus d'une journée et j'ai essayé presque toutes les méthodes disponibles sur Internet. Cependant, beaucoup d’entre eux ne peuvent être utilisés qu’à titre de référence et sont de peu d’utilité, car l’environnement informatique de chacun peut être légèrement différent. Maintenant que c'est fait, enregistrez-le ici. Ma première étape consiste à supprimer la version php que je vois. Je prévois de supprimer tous les php sur l'ordinateur, puis de réinstaller la dernière version. Cette opération est risquée et nécessite de la prudence. Voici ce que dit Internet : ps : Il n'est pas recommandé de supprimer la version PHP intégrée car certains logiciels peuvent dépendre de l'environnement PHP. Bien que vous puissiez vous auto-compiler ou utiliser Brew pour installer une nouvelle version de PHP, c'est le cas. non recommandé aux novices N'oubliez pas de le faire avant d'utiliser TM pour sauvegarder le système afin que les fichiers puissent être restaurés après une erreur.Mais vous n’êtes pas obligé de faire ça. Une version supplémentaire devrait suffire. Pendant le processus de suppression, le fichier exécutable php dans le répertoire user/bin ne peut pas être supprimé. Bien qu'il existe un moyen de supprimer n'importe quel fichier en mode sans échec sur Mac, je ne l'ai pas fait. Ce fichier est conservé, et il y a aussi du php. .-config, lorsque vous ouvrez le fichier avec vi, vous pouvez voir que la version php est la plus ancienne, je suppose que cela peut en être la cause.
Quand j'ai pensé que les autres étaient supprimés, j'ai utilisé Brew pour réinstaller la version php7.1. À l’heure actuelle, vous constaterez que cette question d’annuaire est devenue une priorité absolue. De nombreux didacticiels et chemins sur Internet ne sont plus disponibles. . Alors suivez cet article.
brew Après avoir installé php7.1, il y aura quelque chose ci-dessous :
Le Les fichiers php.ini et php-fpm.ini se trouvent dans :
/usr/local/etc/php/7.1
Pour activer PHP dans Apache, ajoutez ce qui suit à httpd.conf et redémarrez Apache :
LoadModule php7_module /usr/local/opt/php@ 7.1/lib/httpd/modules/libphp7.so
SetHandler application/x-httpd- php
Enfin, vérifiez que DirectoryIndex inclut index.php
DirectoryIndex index.php index.html
Le php.ini et le php-fpm.ini Le fichier peut être trouvé dans :
/usr/local/etc/php/7.1/
Cette formule concerne uniquement le fût, ce qui signifie qu'elle n'a pas été liée symboliquement à /usr/local,
car il s'agit d'une version alternative d'une autre formule.
Si vous devez d'abord avoir ce logiciel dans votre exécution PATH :
echo 'export PATH="/usr/local/opt/php@7.1/bin:$PATH"' >> ~/.bash_profile
echo 'export PATH="/usr/local/opt/php@7.1/sbin:$PATH"' >> ~/.bash_profile
Pour que les compilateurs trouvent ce logiciel, vous devrez peut-être définir :
LDFLAGS : -L/usr/local/opt/php@7.1/lib
CPPFLAGS : -I/usr/local/opt/php@7.1/include
Pour que launchd démarre php@7.1 maintenant et redémarrez à la connexion :
Brew Services démarre php@7.1
Ou , si vous ne voulez pas/avez besoin d'un service en arrière-plan, vous pouvez simplement exécuter :
php-fpm
Cette information est très utile, dit-elle à certains méthodes et chemins d’installation. Je n’ai lu ces informations que lorsque j’étais désespéré et j’ai réalisé que je ne pouvais vraiment pas les ignorer et que je ne pouvais pas suivre les conseils ci-dessus étape par étape. Vous devriez tous pouvoir le comprendre, sinon vous pouvez laisser un message. Après avoir terminé, n'oubliez pas de redémarrer php-fpm
Parlons du détour que j'ai fait au redémarrage de npm
Il peut y avoir deux types d'erreurs lors du redémarrage de php-fpm, la première est qu'il est introuvable ou ouvrez php-fpm. La seconde est que le journal d'erreur ne peut pas être trouvé ou ouvert selon le chemin
Résoudre la première erreur
Exécuter. ps aux|grep php-fpm pour voir php-fpm Le processus de
tel que
root 21891 0.0 0.0 112660 960 pts/3 R+ 16:18 0:00 grep --color=auto php-fpm root 42891 0.0 0.1 182796 1220 ? Ss 4月18 0:19 php-fpm: master process (/usr/local/php/etc/php-fpm.conf) nobody 42892 0.0 0.6 183000 6516 ? S 4月18 0:07 php-fpm: pool www nobody 42893 0.0 0.6 183000 6508 ? S 4月18 0:17 php-fpm: pool www
peut être vu qu'il y a un chemin ci-dessus. sous le chemin d'installation de Brew vers le chemin ci-dessus à l'aide de la commande cp. Si vous ne supprimez pas l'ancien php, il y aura un php-fpm.config.default dans ce chemin. Vous pouvez copier ce fichier directement et le changer en php-fpm.conf.
La deuxième erreur est un problème de log, puis recherchez le php-fpm.conf correspondant et ouvrez-le. Il y a un log dedans et l'adresse correspondante Trouvez l'adresse du log sous mac. Le mien se trouve dans le chemin /usr/local/var et est remplacé par l'adresse réelle. L'adresse par défaut est erronée.
Puis redémarrez fpm, toujours pas de problème.
php-fpm --fpm-config /usr/local/etc/php/5.4/php-fpm.conf --prefix /usr/local/var
Après avoir exécuté cette phrase, j'ai découvert que tant que le terminal n'est pas fermé, php peut être utilisé, mais s'il est fermé, il se bloquera. . .
Eh bien, commençons par le présenter au début. brew services start php@7.1 Cette commande
Ensuite, j'ai exécuté php -v et php-fpm -v
mengdeMacBook dans le terminal -Pro:var GHM$ php-fpm -v
PHP 7.1.16 (fpm-fcgi) (construit : 12 avril 2018 03:25:57)
Copyright (c) 1997-2018 Le groupe PHP
Zend Engine v3.1.0, Copyright (c) 1998-2018 Zend Technologies
avec Xdebug v2.6.0, Copyright (c) 2002-2018, par Derick Rethans
avec Zend OPcache v7.1.16, Copyright (c ) 1999-2018, par Zend Technologies
mengdeMacBook-Pro:var GHM$ php -v
PHP 7.1.16 (cli) (construit : 12 avril 2018 03:25:50) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2018 Zend Technologies
avec Xdebug v2.6.0, Copyright (c) 2002-2018, par Derick Rethans
avec Zend OPcache v7.1.16, Copyright (c) 1999-2018, par Zend Technologies
Au début, mon php-v affichait la dernière version, mais php-fpm exécutait toujours l'ancienne version. Maintenant, l'explication est ok
Ouvrez la page Web et regardez phpinfo()
PHP Version 7.1.16
System | Darwin mengdeMacBook-Pro.local 16.4.0 Darwin Kernel Version 16.4.0: Thu Dec 22 22:53:21 PST 2016; root:xnu-3789.41.3~3/RELEASE_X86_64 x86_64 |
Build Date | Apr 12 2018 03:24:25 |
Configure Command | './configure' '--prefix=/usr/local/Cellar/php@7.1/7.1.16_1' '--localstatedir=/usr/local/var' '--sysconfdir=/usr/local/etc/php/7.1' '--with-config-file-path=/usr/local/etc/php/7.1' '--with-config-file-scan-dir=/usr/local/etc/php/7.1/conf.d' '--with-pear=/usr/local/Cellar/php@7.1/7.1.16_1/share/php@7.1/pear' '--enable-bcmath' '--enable-calendar' '--enable-dba' '--enable-dtrace' '--enable-exif' '--enable-ftp' '--enable-fpm' '--enable-intl' '--enable-mbregex' '--enable-mbstring' '--enable-mysqlnd' '--enable-opcache-file' '--enable-pcntl' '--enable-phpdbg' '--enable-phpdbg-webhelper' '--enable-shmop' '--enable-soap' '--enable-sockets' '--enable-sysvmsg' '--enable-sysvsem' '--enable-sysvshm' '--enable-wddx' '--enable-zip' '--with-apxs2=/usr/local/opt/httpd/bin/apxs' '--with-bz2' '--with-fpm-user=_www' '--with-fpm-group=_www' '--with-freetype-dir=/usr/local/opt/freetype' '--with-gd' '--with-gettext=/usr/local/opt/gettext' '--with-gmp=/usr/local/opt/gmp' '--with-icu-dir=/usr/local/opt/icu4c' '--with-jpeg-dir=/usr/local/opt/jpeg' '--with-kerberos' '--with-layout=GNU' '--with-ldap' '--with-ldap-sasl' '--with-libedit' '--with-libzip' '--with-mcrypt=/usr/local/opt/mcrypt' '--with-mhash' '--with-mysql-sock=/tmp/mysql.sock' '--with-mysqli=mysqlnd' '--with-ndbm' '--with-openssl=/usr/local/opt/openssl' '--with-pdo-dblib=/usr/local/opt/freetds' '--with-pdo-mysql=mysqlnd' '--with-pdo-odbc=unixODBC,/usr/local/opt/unixodbc' '--with-pdo-pgsql=/usr/local/opt/libpq' '--with-pgsql=/usr/local/opt/libpq' '--with-pic' '--with-png-dir=/usr/local/opt/libpng' '--with-pspell=/usr/local/opt/aspell' '--with-unixODBC=/usr/local/opt/unixodbc' '--with-webp-dir=/usr/local/opt/webp' '--with-xmlrpc' '--with-xsl' '--with-zlib' '--with-curl' |
坑多,两天了有些我也忘了,谁有遇到问题可以留言。。。
下面说下xdebug 安装
建议按官方,少走弯路
打开这个xdebug 官方页面
然后command+a 全选,command +v 复制,放到框框里面,运行底部的按钮,会打印出很多我们安装xdebug所需要用到的信息
按步骤走就好了,有一点坑就是,当执行phpsize 的时候报:command cannot find ,这时候找到brew 安装php 的可执行bin目录,直接用那个里面的phpsize 拿来运行,绝对路径运行就可以执行了。还有官方下载的页面有两级目录,而且名字一样,别弄错了,不然运行不了。
Download xdebug-2.6.0.tgz
Unpack the downloaded file with
tar -xvzf xdebug-2.6.0.tgz
Run:
cd xdebug-2.6.0
-
Run:
phpize
(See the FAQ if you don't havephpize
.As part of its output it should show:
Configuring for: ... Zend Module Api No: 20160303 Zend Extension Api No: 320160303
Copier après la connexionIf it does not, you are using the wrong
phpize
. Please followthis FAQ entry and skip the next step. Run:
./configure
Run:
make
Run:
cp modules/xdebug.so /usr/local/lib/php/pecl/20160303
Edit
/usr/local/etc/php/7.1/php.ini
and add the linezend_extension = /usr/local/lib/php/pecl/20160303/xdebug.so
Restart the webserver
然后,刷新pathinfo() ,command+f 查找xdebug
看到这样就成功了
然后就是配置xdebug 了
相关推荐:
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

PHP 8.4 apporte plusieurs nouvelles fonctionnalités, améliorations de sécurité et de performances avec une bonne quantité de dépréciations et de suppressions de fonctionnalités. Ce guide explique comment installer PHP 8.4 ou mettre à niveau vers PHP 8.4 sur Ubuntu, Debian ou leurs dérivés. Bien qu'il soit possible de compiler PHP à partir des sources, son installation à partir d'un référentiel APT comme expliqué ci-dessous est souvent plus rapide et plus sécurisée car ces référentiels fourniront les dernières corrections de bogues et mises à jour de sécurité à l'avenir.

Visual Studio Code, également connu sous le nom de VS Code, est un éditeur de code source gratuit – ou environnement de développement intégré (IDE) – disponible pour tous les principaux systèmes d'exploitation. Avec une large collection d'extensions pour de nombreux langages de programmation, VS Code peut être c

Ce tutoriel montre comment traiter efficacement les documents XML à l'aide de PHP. XML (Language de balisage extensible) est un langage de balisage basé sur le texte polyvalent conçu à la fois pour la lisibilité humaine et l'analyse de la machine. Il est couramment utilisé pour le stockage de données et

Si vous êtes un développeur PHP expérimenté, vous aurez peut-être le sentiment d'y être déjà allé et de l'avoir déjà fait. Vous avez développé un nombre important d'applications, débogué des millions de lignes de code et peaufiné de nombreux scripts pour réaliser des opérations.

JWT est une norme ouverte basée sur JSON, utilisée pour transmettre en toute sécurité des informations entre les parties, principalement pour l'authentification de l'identité et l'échange d'informations. 1. JWT se compose de trois parties: en-tête, charge utile et signature. 2. Le principe de travail de JWT comprend trois étapes: la génération de JWT, la vérification de la charge utile JWT et l'analyse. 3. Lorsque vous utilisez JWT pour l'authentification en PHP, JWT peut être généré et vérifié, et les informations sur le rôle et l'autorisation des utilisateurs peuvent être incluses dans l'utilisation avancée. 4. Les erreurs courantes incluent une défaillance de vérification de signature, l'expiration des jetons et la charge utile surdimensionnée. Les compétences de débogage incluent l'utilisation des outils de débogage et de l'exploitation forestière. 5. L'optimisation des performances et les meilleures pratiques incluent l'utilisation des algorithmes de signature appropriés, la définition des périodes de validité raisonnablement,

Une chaîne est une séquence de caractères, y compris des lettres, des nombres et des symboles. Ce tutoriel apprendra à calculer le nombre de voyelles dans une chaîne donnée en PHP en utilisant différentes méthodes. Les voyelles en anglais sont a, e, i, o, u, et elles peuvent être en majuscules ou en minuscules. Qu'est-ce qu'une voyelle? Les voyelles sont des caractères alphabétiques qui représentent une prononciation spécifique. Il y a cinq voyelles en anglais, y compris les majuscules et les minuscules: a, e, i, o, u Exemple 1 Entrée: String = "TutorialSpoint" Sortie: 6 expliquer Les voyelles dans la chaîne "TutorialSpoint" sont u, o, i, a, o, i. Il y a 6 yuans au total

Liaison statique (statique: :) implémente la liaison statique tardive (LSB) dans PHP, permettant à des classes d'appel d'être référencées dans des contextes statiques plutôt que de définir des classes. 1) Le processus d'analyse est effectué au moment de l'exécution, 2) Recherchez la classe d'appel dans la relation de succession, 3) il peut apporter des frais généraux de performance.

Quelles sont les méthodes magiques de PHP? Les méthodes magiques de PHP incluent: 1. \ _ \ _ Construct, utilisé pour initialiser les objets; 2. \ _ \ _ Destruct, utilisé pour nettoyer les ressources; 3. \ _ \ _ Appel, gérer les appels de méthode inexistants; 4. \ _ \ _ GET, Implémentez l'accès à l'attribut dynamique; 5. \ _ \ _ SET, Implémentez les paramètres d'attribut dynamique. Ces méthodes sont automatiquement appelées dans certaines situations, améliorant la flexibilité et l'efficacité du code.
