php7安裝擴展
#解壓
tar xzvf mysql-45881bd.tar.gz
#進入mysql擴展目錄
cd mysql-45881bd/
#使用phpize初始化,我的phpize在/opt/目錄
/opt/php/bin/phpize
#編譯mysql擴展,使用mysql native driver作為mysql鏈接庫
./configure --with-php-config=/opt/php/bin/php-config --with-mysql=mysqlnd
『貳』 如何在PHP7中安裝mysql的擴展
如何在PHP7中安裝mysql的擴展
1,去php網站上下載mysql擴展
2,解壓並使用phpize工具初始化,編譯:
#解壓
tar xzvf mysql-45881bd.tar.gz
#進入mysql擴展目錄
cd mysql-45881bd/
#使用phpize初始化,我的phpize在/opt/目錄
/opt/php/bin/phpize
#編譯mysql擴展,使用mysql native driver作為mysql鏈接庫
./configure --with-php-config=/opt/php/bin/php-config --with-mysql=mysqlnd
make && make install
5,編輯php.ini文件,把mysql.so拷貝到php.ini的extension_dir中,然後在php.ini中加入extension=mysql.so
6,重啟php
『叄』 windows下php7怎麼裝擴展imagick
安裝php_imagick擴展,它只是一個擴展,相當於一個api,更多還是還需要依賴ImageMagick主程序的支撐,所以我們首先還是得要安裝ImageMagick程序。
下載的方法和過程,在這里寫的很完整,按照這個步驟進行一般都很順利安裝完成。
『肆』 PHP7.0怎麼通過打開擴展功能和mysql相連
第一步:進入php源碼中的"ext/mysql"目錄下
第二步:在當前目錄下運行phpize命令:/usr/local/php524/bin/phpize
phpize的規則:去哪個目錄下運行phpize文件,那麼就會在該目錄下生成一個configure文件。
第三步:運行剛才生成的configure文件
命令: ./configure --with-php-config=/usr/local/php524/bin/php-config --with-mysql=/usr/local/mysql/
這里最關鍵的是通過--with-mysql參數告訴mysql客戶端的位置。這樣才能生成mysql.so。
實驗的時候,沒有加這個參數,結果錯誤:
./configure --with-php-config=/usr/local/php524/bin/php-config
第四步:編譯生成.so文件
第五步:配置php引擎載入該擴展。
補充一下:就是去php.ini文件中修改一下配置,載入mysql.so這個擴展(這個擴展文件要放到php指定的擴展目錄下面去)
第六步:測試php引擎是否成功載入該擴展編寫文件phpinfo.php,內容是:<?phpehco phpinfo();?>
運行後,可以看到有如下信息顯示:mysqlMySQLSupport enabledActive PersistentLinks 0
Active Links 0
Client API version 5.1.55
MYSQL_MODULE_TYPE no value
MYSQL_SOCKET /tmp/mysql.sock
MYSQL_INCLUDE no value
MYSQL_LIBS no value
通過這樣的方式可以確認,php引擎已經成功載入了mysql.so擴展。
第七步:已經生成的mysql.so。編寫php代碼測試是否能連接mysql。
『伍』 PHP單獨添加擴展 無需重啟伺服器
問題
php自身提供了很多擴展,比如curl,gmp, mbstring等等。我們在編譯安裝php時未必安裝了所有擴展。那麼在安裝完php後,如果想單獨安裝某個php自身的擴展怎麼辦呢?
我們以curl擴展模塊的安裝為例說明如何單獨添加擴展。
步驟
1.進入php源碼的擴展目錄。本例中我的源碼對應目錄如下:
/search/src/php-7.0.14/ext
1
2.進入模塊目錄,我們安裝的是curl擴展,所以進入curl目錄。此時,我們所在的目錄是
/search/src/php-7.0.14/ext/curl
1
3.執行phpize。注意,如果你的機器上有多個php版本,一定要執行你准備安裝擴展的php版本對應的phpize。比如,我的機器上同時有php7和php5.3.3。我當前准備為php7安裝curl擴展。所以執行php7對應的phpize
1 /usr/local/php70/bin/phpize
2
3 結果類似:
4 Configuring for:
5 PHP Api Version: 20151012
6 Zend Mole Api No: 20151012
7 Zend Extension Api No: 320151012
4.執行
./configure --with-php-config=/usr/local/php70/bin/php-config
1
說明:如果你的機器上只有一個php版本,大多時候不需要特別使用–with-php-config指明相應的php-config所在位置。
5.執行make,之後會在./moles/目錄下生成curl.so文件
6.執行make install
結果類似:
Installing shared extensions: /usr/local/php70/lib/php/20151012/
1
2
執行結果告訴你將curl.so安裝到了哪個目錄。
一般情況,如果你正確的指定了php-config或者你的機器只有一個php版本,so都會被正確安裝到相應php的extension_dir。如果執行make install後,extension_dir目錄下沒有相應的so,可以手動將第5步中生成的so文件cp過去。
要查看具體extension_dir,可以執行如下命令。
php -i| grep extension_dir
結果類似
extension_dir => /usr/local/php70/lib/php/20151012/ => /usr/local/php70/lib/php/20151012/
1
2
3
7.在php.ini中增加
extension=curl.so
1
如果不知道php.ini的具體位置,可以通過如下命令查看
php --ini
1
8.執行如下命令,查看是否安裝成功
php -m | grep curl
1
如果你看到了curl, 恭喜你,安裝成功!
『陸』 如何在PHP7中安裝mysql擴展
windows的話,可以用phpstudy環境,點開就行了,macos的話,我也剛遇到這個問題,項目中有一個函數,用到mysql擴展,但是brew 里沒有php5.6的mysql擴展(更高的版本也沒有),你解決以後可以密我一下。謝謝
『柒』 怎麼安裝php的mysql擴展
你試試這樣行不行PHP7 正式移除了 mysql 擴展 目前可以使用mysqlnd和mysql mysqli pdo_mysql 關系打比方說 mysqlnd是金屬,而mysql mysqli pdo_mysql只是金屬製品而已 使用PDO連接mysql的格式: $pdo = new PDO('mysql:host=localhost;dbname=database_name;port=3306','用戶名','密碼'); $pdo->exec('set names utf8'); $stmt = $pdo->prepare("select * from table where id =:id"); $stmt->bindValue(':id',1,PDO::PARAM_INT); $stmt->execute(); $rows = $stmt->fetchAll(PDO::FETCH_ASSOC); $rows = $pdo->query("select * from table where id = 1")->fetchAll(PDO::FETCH_ASSOC);
,你看過後很簡單吧以後不會可以向我一樣經常到後盾人找找相關教材看看就會了,希望能幫到你,給個採納吧謝謝(✽^㉨^)
『捌』 如何在PHP7中安裝mysql的擴展
網上一堆教程,一搜就有了,或者你可以選擇集成環境套件軟體。
你可以直接使用phpwamp8.1.8.8,自帶最新php版本兼容所有windows系統
自身集成了php7等各個版本,還能自定義設置任意php版本,官方提供700個php版本給你切換,不會使用的話,看官網教程,網路搜索「phpwamp」就有了。
『玖』 如何在PHP7中安裝mysql的擴展
你好,
1.去php網站上下載mysql擴展,
2.解壓並使用phpize工具初始化,編譯:
#解壓
tar xzvf mysql-45881bd.tar.gz
#進入mysql擴展目錄 from
cd mysql-45881bd/
#使用phpize初始化,我的phpize在/opt/目錄
/opt/php/bin/phpize
#編譯mysql擴展,使用mysql native driver作為mysql鏈接庫
./configure --with-php-config=/opt/php/bin/php-config --with-mysql=mysqlnd
make && make install
3.接下來,我們直接編輯php.ini文件,把mysql.so拷貝到php.ini的extension_dir中,然後在php.ini中加入extension=mysql.so
4.重啟php
成功之後,用phpinfo即可看到mysql擴展的信息
『拾』 centos的php7怎麼安裝memcached擴展
最近試了一下PHP7,在編譯和支持MySQL上都遇到一些問題,相信不少同學也同樣遇到,所以在這里聊一下這個過程。簡單來講編譯PHP7隻需要3步: 1、./buildconf --force 2、./configure 3、make && make install 1、3步,都沒啥好管的,configure是編譯的關鍵,涉及到PHP對一些庫的支持,這里我們使用最小的支持,包括MySQL: curl gd fpm mysqlnd 之所以把curl和gd拿來說,目的是要搞清楚,這些三方庫在編譯PHP之前得安裝好,可以直接使用yum安裝在默認位置,也可以編譯安裝到指定位置,yum安裝後,編譯時不用指定庫的安裝位置,關於安裝這些庫,可以搜索一下有很多。下面看看基本的configure ./configure --prefix=/apps/php/php7.0 --enable-mbstring --with-curl --with-gd --with-config-file-path=/apps/php/php7.0/etc/ -- enable-fpm --enable-mysqlnd --with-pdo-mysql=mysqlnd PHP-FPM 關於fpm,相信不用多說,用它來支持PHP是一個比較好的選擇,PHP5.3.3開始就已經內置了php-fpm,所以PHP7里當然也有,只需要--enable-fpm一下就可以了 php-fpm參數: --start 啟動 --stop 強制終止 --quit 平滑終止 --restart 重啟 --reload 重新平滑載入php的php.ini --logrotate 重新啟用log文件 MySQL支持 重點講一下這個,因為在它上面花了一點時間,不知道從哪一版本開始,PHP不在希望使用mysql的庫來支持mysql的連接,啟用了mysqlnd來支持,聽說比libmysql要快很多,PHP5.x還可以使用libmysql,PHP7貌似已經取消了支持,編譯都沒有了--with-mysql參數,只支持--with-mysqli和--with-pdo-mysql,可以通過查看configure的參數來知道: ./configure -help grep mysql 可以看到,PHP希望使用mysqlnd來支持MySQL,所以參數可以這樣寫: --enable-mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd mysqlnd是不需要mysql支持的,所以不用先安裝好mysql一樣可以編譯通過,啟動php-fpm,查看一下phpinfo,能看到mysqlnd和pdo_mysql表示php已經可以支持mysql了(這里用的是pdo,mysqli同理) 幾個問題 編譯問題:cc: Internal error: Killed (program cc1) 這個問題是第一次遇到,原來是我的阿里雲伺服器關掉了swap,內存不夠用,就報了這個錯。 解決辦法很簡單,configure時加上--disable-fileinfo參數就可以了。 PHP報找不到mysql服務 正如它所說,確實沒找到,看看phpinfo中pdo_mysql.default_socket項 mysql.sock在哪裡,再看一下mysql.sock的真正位置,使用命令:ps -efgrep mysql查看: 明顯不在一個位置上,我的正確位置是:/var/lib/mysql/mysql.sock 所以,修改一下php.ini,找到pdo_mysql.default_socket,改為你的實際位置,重啟一下php-fpm,很不幸,雖然php.ini有這個配置,修改後,竟然不行,最好是編譯的時候,指定mysql.socket的位置: --with-mysql-sock=/var/lib/mysql/mysql.sock 如果還不行,可以到/tmp目錄下建立一個mysql.sock的軟鏈接: ln -s /var/lib/mysql/mysql.sock mysql.sock 再重啟一次php-fpm,相信已經正常運行了。如果需要PHP支持的庫更多,可以再次編譯,在configure時把需要的支持加上,就是--with-xxx這中,記得如果是三方的,要先安裝這些庫才行哦。