您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關win php如何安裝擴展,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
win php安裝擴展的方法:1、在官網下載想要的擴展;2、解壓并將里面的php_redis.dll放到ext目錄下;3、把php_redis.dll放到php.ini中指定的文件夾里面,并把redis模塊加載即可。
本文操作環(huán)境:Windows7系統(tǒng)、PHP7.1版、DELL G3電腦
win php怎么安裝擴展?
windows環(huán)境下PHP安裝擴展
PHP安裝擴展
一、php擴展管理
1.什么是php擴展
php擴展就是php核心并不支持的功能,然后可以通過擴展的方式進行擴展PHP的功能,常見的擴展如MySQL,gb2等等。
2.查看php安裝了那些擴展
方法一:通過phpinfo()函數(shù),進行查看,紅框的都是php的擴展
<?php phpinfo(); ?>
方法二:執(zhí)行php -m 命令:
[root@linux-host ~]# php -m
方法三:使用php的get_loaded_extensions()函數(shù)
<?php print_r(get_loaded_extensions()); ?>
以上例程的輸出類似于:
Array( [0] => xml [1] => wddx [2] => standard [3] => session [4] => posix [5] => pgsql [6] => pcre [7] => gd [8] => ftp [9] => db [10] => calendar [11] => bcmath)
方法四:extension_loaded函數(shù)檢查一個擴展是否已經加載,如果 name 指定的擴展已加載,返回TRUE,否則返回 FALSE。
<?php if (!extension_loaded('gd')) { if (!dl('gd.so')) { exit; } }
3.管理php擴展
a.設定擴展所在目錄,將php.ini的extension_dir設定成自己php擴展路徑
b.加載擴展
二、windows安裝php擴展
1.下載
http://pecl.php.net/是官方的擴展庫,我們可以在這里下載自想要的擴展
所有的拓展列表: https://pecl.php.net/package-stats.php
2.選擇版本
已安裝redis為例:
進入redis拓展下載地址: https://pecl.php.net/package/redis
點擊 旁邊的
按鈕后進入windows下載界面
安裝windows的php擴展需要注意版本的選擇:php的版本、是否是線性安全、操作系統(tǒng)的位數(shù)。
怎么查看自己環(huán)境支持的版本信息呢,可以通過php的內置phpinfo()函數(shù),進行查看:
當我們使用phpinfo的時候,多數(shù)時候都是在看模塊有沒有裝上,但是其他重要信息卻忽略了,例如,為啥我的拓展老是裝不上,下載的拓展上面一長串啥意思?nts x86 5.5等等,這些都是重要的信息,對于安裝拓展來說尤其重要!
上面的幾個重要參數(shù):
compiler :編譯器 Architecture :CPU架構 Configuration File (php.ini) Path :php配置文件的位置,這里才是你的配置文件加載的真正地方,apache的同學小心了! Thread Safety :線程安全與否 PHP Extension Build :php拓展建立的編號
以上幾個參數(shù)關系到你能不能裝上拓展,要認真看!下載拓展.dll文件的時候很多選項,那里面的選項就和這里的對應!
例如下面:
隨便取一個來分析下:
php_igbinary-1.2.1-5.3-nts-vc9-x86.zip
意思是:1.2.1版本的php_igbinary拓展,適合的php版本是5.3及以上,vc9編譯的這個拓展,,不支持線程安全,可以用在x86 cpu架構上,注意64位的機器也可以用!但是反過來就不行了。
是不是清楚很多了?我是在安裝redis的時候碰到這個問題的。
來繼續(xù)安裝redis拓展, 進入頁面: https://windows.php.net/downloads/pecl/releases/redis/
以安裝php-redis-3.1.3為例:
我通過phpinfo()函數(shù)得到配置應該安裝NTS, x86, VC14的dll拓展:
下載頁: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)、執(zhí)行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 踩過的一些坑:
發(fā)現(xiàn)phpStudy2018切換到php 7以上版本,無論怎么修改安裝拓展,就是拓展都不生效,就連自帶的curl都沒有啟來,
經過半天反復折騰php.ini配置,才發(fā)現(xiàn)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函數(shù),拓展都生效了
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擴展,結果發(fā)現(xiàn)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 ;指定遠程調試的處理協(xié)議 xdebug.remote_handler="dbgp";指定遠程調試的主機名 xdebug.remote_host="127.0.0.1";指定遠程調試的端口號 xdebug.remote_port=9100;是否啟用Xdebug的性能分析,并創(chuàng)建性能信息文件 ;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 ;允許收集傳遞給函數(shù)的參數(shù)變量 xdebug.collect_params=on ;允許收集函數(shù)調用的返回值 xdebug.collect_return=on
關于“win php如何安裝擴展”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。
免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。