Heim >Backend-Entwicklung >PHP-Problem >So installieren Sie Erweiterungen in Win PHP
So installieren Sie Erweiterungen in Win PHP: 1. Laden Sie die gewünschte Erweiterung von der offiziellen Website herunter. 2. Entpacken Sie die Datei php_redis.dll und legen Sie sie im ext-Verzeichnis ab. 3. Legen Sie php_redis.dll in der in php.ini angegebenen Datei ab Ordner und laden Sie das Redis-Modul.
Die Betriebsumgebung dieses Artikels: Windows 7-System, PHP-Version 7.1, DELL G3-Computer
Wie installiere ich Erweiterungen in Win PHP? ?? php core. Dann können Sie die Funktionen von PHP durch Erweiterungen, gängige Erweiterungen wie MySQL, gb2 usw. erweitern.
2. Überprüfen Sie, welche Erweiterungen in PHP installiert sind.
Methode 1: Überprüfen Sie mithilfe der Funktion phpinfo(), ob es sich bei den roten Kästchen um PHP-Erweiterungen handelt.
Methode 2: Führen Sie den Befehl php -m ausMethode 3: Verwenden Sie die PHP-Funktion get_loaded_extensions()
<?php phpinfo(); ?>Die Ausgabe der obigen Routine ähnelt:Array( [0] => xml [1] => wddx [2] => Standard [3] => Sitzung [5] => pgsql [7] => [10] => Calendar [11] => bcmath)Methode 4: Die Funktion „extension_loaded“ prüft, ob eine Erweiterung geladen wurde, und gibt „TRUE“ zurück, andernfalls gibt sie „FALSE“ zurück.
[root@linux-host ~]# php -m3. PHP-Erweiterungen verwalten a. Legen Sie das Verzeichnis fest, in dem sich die Erweiterung befindet, und stellen Sie das Erweiterungsverzeichnis von php.ini auf Ihren eigenen PHP-Erweiterungspfad ein 2. Windows-Installations-PHP-Erweiterung
1. Download
http://pecl.php.net/ ist die offizielle Erweiterungsbibliothek, wir können die gewünschten Erweiterungen hier herunterladenListe von alle Erweiterungen: https://pecl.php.net/package-stats.php
2. Wählen Sie die Version
Redis wurde als Beispiel installiert: Geben Sie die Download-Adresse der Redis-Erweiterung ein: https: //pecl.php.net /package/redis Klicken Sie auf die Schaltflächedaneben, um die Windows-Downloadoberfläche aufzurufen
Bei der Installation der Windows-PHP-Erweiterung müssen Sie auf Folgendes achten Versionsauswahl: PHP-Version, ob es sich um lineare Sicherheit handelt, und die Bitnummer des Betriebssystems. Wie kann ich die von Ihrer Umgebung unterstützten Versionsinformationen überprüfen? Sie können sie über die in PHP integrierte Funktion phpinfo() überprüfen:
Wenn wir phpinfo verwenden, prüfen wir meistens, ob das Modul ist installiert, aber andere wichtige Informationen werden ignoriert. Warum können meine Erweiterungen beispielsweise nicht installiert werden? Was bedeutet die lange Liste der heruntergeladenen Erweiterungen? nts x86 5.5 usw. Dies sind wichtige Informationen, besonders wichtig für die Installation von Erweiterungen!
Mehrere wichtige Parameter oben:
<?php print_r(get_loaded_extensions()); ?>Die oben genannten Parameter beziehen sich darauf, ob Sie die Erweiterung installieren können, achten Sie also sorgfältig darauf! Beim Herunterladen der Erweiterungs-DLL-Datei gibt es viele Optionen, und die Optionen dort entsprechen denen hier!
Zum Beispiel: Wählen Sie einfach eine aus und analysieren Sie sie:
<?php if (!extension_loaded('gd')) { if (!dl('gd.so')) { exit; } }
Es bedeutet: php_igbinary-Erweiterung der Version 1.2.1. Die geeignete PHP-Version ist 5.3 und höher. Diese von vc9 kompilierte Erweiterung unterstützt keine Thread-Sicherheit und kann in verwendet werden Bitte beachten Sie, dass bei x86-CPU-Architektur auch 64-Bit-Maschinen verwendet werden können! Aber das Gegenteil ist nicht der Fall.
Ist es viel klarer? Bei der Installation von Redis ist dieses Problem aufgetreten.
Um mit der Installation der Redis-Erweiterung fortzufahren, rufen Sie die Seite auf: https://windows.php.net/downloads/pecl/releases/redis/Nehmen Sie die Installation von php-redis-3.1.3 als Beispiel: Ich übergebe phpinfo() Um die Funktion zu konfigurieren, sollten NTS-, x86- und VC14-DLL-Erweiterungen installiert sein:Download-Seite: https://pecl.php.net/package/redis/3.1.3/windows
下载页: https://windows.php.net/downloads/pecl/releases/redis/3.1.3/
下载解压,将里面的 php_redis.dll 放到ext目录下,
3.安装
将下载好的压缩包解压,然后把里面的php_redis.dll放到php.ini中制定的文件夹里面,并把redis模块加载,然后从起服务器。
同理, 安装memcache:
https://windows.php.net/downloads/pecl/releases/memcache/3.0.8/
三、linux安装php扩展
1.yum或者apt-get安装
2.使用pecl安装
1)、pecl install安装
~# pecl install memcached
downloading memcached-2.2.0.tgz ...
Starting to download memcached-2.2.0.tgz (70,449 bytes)....
2)、配置php.ini
通过运行 php --ini查找php.ini文件位置,然后在文件中添加extension=memcached.so
3.phpize安装——以redis为例
1)、下载php扩展包
[root@localhost ~]# wget http://pecl.php.net/get/redis-4.0.0.tgz
2)、解压缩并进入扩展包目录
[root@localhost ~]# tar -xzvvf redis-4.0.0.tgz
[root@localhost redis-4.0.0]# cd redis-4.0.0
3)、执行phpize
[root@localhost redis-4.0.0]# phpize
4)、./configure
[root@localhost redis-4.0.0]# ./configure --with-php-config=/usr/bin/php-config
5)、make && make install
[root@localhost redis-4.0.0]# make && make install
6)、配置php.ini
extension=redis.so
4.直接安装(类似windows)
直接下载将下载好的压缩包,解压后将.so后缀的文件直接放到指定的路径,然后配置php.ini文件。
phpStudy2018 踩过的一些坑:
发现phpStudy2018切换到php 7以上版本,无论怎么修改安装拓展,就是拓展都不生效,就连自带的curl都没有启来,
经过半天反复折腾php.ini配置,才发现phpStudy2018的几个php7目录下的php.ini有个配置出的问题:
extension_dir = "E:\PHPServer\phpStudy2018\PHPTutorial\php\php-7.1.9-nts\ext"
屏蔽到这句,改成:
;extension_dir = "E:\PHPServer\phpStudy2018\PHPTutorial\php\php-7.1.9-nts\ext"extension_dir = "ext"
查看phpinfo函数,拓展都生效了
windows的php7安装memcache扩展
安装memcache:http://www.runoob.com/memcached/memcached-connection.html
启动服务:
c:\memcached\memcached.exe -d install c:\memcached\memcached.exe -d start c:\memcached\memcached.exe -d stop
启动计划任务:
schtasks /create /sc onstart /tn memcached /tr “‘c:\memcached\memcached.exe’ -m 512” telnet HOST PORT
window下安装php7的memcache扩展,结果发现php_memcache.dll的官方编译出来的版本支持到PHP 5.6就停了,找了半天才在外国人的网站找到
https://stackoverflow.com/questions/34952502/memcache-for-php7-on-windows,
git下载地址:https://github.com/nono303/PHP7-memcache-dll
根据自己的php版本下载
下载解压后,
就到 php/ext 目录下 把 php_memcache.dll 放到里面
然后在 php 目录下的 php.ini 增加一段内容
extension=php_memcache.dll
加完之后,重启 apache或者nginx
然后 在php页面输出phpinfo();
检查 memcache 是否成功加载了。
如果成功加载了 ,就可以 在一个php页面做 memcache测试了
<?php $memcache = new Memcache; $memcache->connect('127.0.0.1',11211) or die('shit'); $memcache->set('key','hello memcache!'); $out = $memcache->get('key'); echo $out; ?>
成功的话会输出
hello memcache!
下载地址1: https://windows.php.net/downloads/pecl/releases/xdebug/
假设根据上面步骤获取到 7.2 NTS, VC15 x64等信息,来下载对应的版本:
下载想要的对应版本:
下载地址2,官网下载: https://xdebug.org/download
或者点击打开 custom installation instructions. 也就是地址: https://xdebug.org/wizard 来计算出自己的电脑版本php对应的xdebug库版本信息:
进入页面后把 phpinfo() 或 php -i 打印出来的信息全选复制进去:
最后得出的结论:
把 php_xdebug.dll 文件放入 ext 文件夹下,配置 php.ini, 然后重启服务器。
附: xdebug的php.ini配置信息:
[XDebug] ;指定Xdebug扩展文件的绝对路径 zend_extension="E:\PHPServer\phpStudy_v8\Extensions\php\php7.2.9nts\ext\php_xdebug.dll";指定堆栈跟踪文件的存放目录 xdebug.trace_output_dir="E:\PHPServer\phpStudy_v8\Extensions\tmp\xdebug";是否开启远程调试 xdebug.remote_enable= on xdebug.remote_autostart = on xdebug.remote_mode=req ;指定远程调试的处理协议 xdebug.remote_handler="dbgp";指定远程调试的主机名 xdebug.remote_host="127.0.0.1";指定远程调试的端口号 xdebug.remote_port=9100;是否启用Xdebug的性能分析,并创建性能信息文件 ;xdebug.profiler_enable=on ;xdebug.profiler_enable_trigger=0;指定性能分析信息文件的输出目录 xdebug.profiler_output_dir="E:\PHPServer\phpStudy_v8\Extensions\tmp\xdebug";指定传递给DBGp调试器处理程序的IDE Key xdebug.idekey="PHPSTORM";启用代码自动跟踪 ;xdebug.auto_trace=on ;允许收集传递给函数的参数变量 xdebug.collect_params=on ;允许收集函数调用的返回值 xdebug.collect_return=on
推荐学习:《PHP视频教程》
Das obige ist der detaillierte Inhalt vonSo installieren Sie Erweiterungen in Win PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!