php7连接pdo
① ubuntu 16.04 php7.0婧愰噷闱㈠畨瑁呯殑镐庝箞寰閲岄溃娣诲姞妯″潡
ubuntu 16.04 php7.0婧愰噷闱㈠畨瑁呯殑镐庝箞寰閲岄溃娣诲姞妯″潡
pdo镓╁𪾢妯℃槸链夎洰澶氢简锛屽俻do_mysql涔熸槸pdo妯″潡涓镄勪竴涓浜嗭纴涓嬫枃鎴戜滑灏变互瀹夎卲do_mysql涓虹ず渚嫔府锷╁ぇ瀹朵粙缁崭竴涓嫔畨瑁呮ラゅ惂锛屽叾瀹幂殑pdo镓╁𪾢妯″潡瀹夎呮ラや篃鍙浠ヤ竴镙枫
锅囱绯hp鐩褰曚负/usr/local/php
mysql鐩褰曚负/usr/local/mysql
1. 杩涘叆PHP婧愮爜鍖卐xt/pdo鐩褰
cd ext/pdo
2. 镓ц/usr/local/php/bin/phpize[锅囱綪HP镄勫畨瑁呯洰褰曚负/usr/local/php]
/usr/local/php/bin/phpize
3. 閰岖疆镓╁𪾢pdo
./configure --with-php-config=/usr/local/php/bin/php-config --enable-pdo=shared
4. 缂栬疟 && 瀹夎卲do
make && make install
鎴愬姛鍒椤嚭鐜
Installing shared extensions: /usr/local/php//lib/php/extensions/no-debug-non-zts-20060613/
Installing header files: /usr/local/php//include/php/
Installing PDO headers: /usr/local/php//include/php/ext/pdo/
璇存槑鍦/usr/local/php//lib/php/extensions/no-debug-non-zts-20060613/鐩褰曚笅鐢熸垚浜唒do.so鏂囦欢
5. 鍦≒HP婧愮爜鍖呬腑杩涘叆pdo_mysql
cd ext/pdo_mysql
6. /usr/local/php/bin/phpize
/usr/local/php/bin/phpize
7. 閰岖疆pdo_mysql[锅囱綧ysql镄勫畨瑁呯洰褰曚负/usr/local/mysql]
1./configure --with-php-config=/usr/local/php/bin/php-config --with-pdo-mysql=/usr/local/mysql
8. 缂栬疟 瀹夎卲do_mysql
make && make install
鎴愬姛鍒椤嚭鐜
Installing shared extensions: /usr/local/php//lib/php/extensions/no-debug-non-zts-20060613/
璇存槑镄/usr/local/php//lib/php/extensions/no-debug-non-zts-20060613/鐩褰曚笅鐢熸垚浜唒do_mysql.so鏂囦欢
9. 鍦╬hp閰岖疆鏂囦欢涓锷犱笂
extension="/usr/local/php//lib/php/extensions/no-debug-non-zts-20060613/pdo_mysql.so";
extension="/usr/local/php//lib/php/extensions/no-debug-non-zts-20060613/pdo.so";
10. 閲嶅惎鐩稿叧链嶅姟
/etc/init.d/php-fpm restart
② 濡备綍鍦≒HP7涓瀹夎卪ysql镄勬墿灞
鐩稿逛笌PHP5锛孭HP7镄勬渶澶у彉鍖栦箣涓鏄绉婚櫎浜唌ysql镓╁𪾢锛屾帹钻愪娇鐢╩ysqli鎴栬卲do_mysql锛屽疄闄呬笂鍦≒HP5.5寮濮,PHP灏辩潃镓嫔紑濮嫔嗳澶囧纯鐢╩ysql镓╁𪾢锛屽傛灉浣犱娇鐢╩ysql镓╁𪾢锛屽彲鑳界湅鍒拌繃杩欐牱镄勬彁绀衡滵eprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in钬.镓浠ュ湪浠ュ悗镄勭▼搴忎腑锛屼负浜嗕缭鎸佸吋瀹规э纴瑕佸敖閲忓噺灏戜娇鐢╩ysql镓╁𪾢鐢ㄤ簬鏁版嵁搴撹繛鎺.
浣滀负杩愮淮浜哄憳𨱒ヨ达纴镞㈡兂浣跨敤PHP7𨱒ユ彁鍗囨湇锷″櫒镄勬晥鐜囷纴鍙堣佷缭璇佽佺殑绋嫔簭鑳藉熻繍琛岋纴濡备綍锅氩憿?
1.铡籶hp缃戠珯涓娄笅杞絤ysql镓╁𪾢锛宧ttp://git.php.net/?p=pecl/database/mysql.git;a=summary
2.瑙e帇骞朵娇鐢╬hpize宸ュ叿鍒濆嫔寲锛岀紪璇:---鏂囦欢鍖呮槸
#瑙e帇
tarxzvfmysql-45881bd.tar.gz
#杩涘叆mysql镓╁𪾢鐩褰昮romwww.mfbuluo.com
cdmysql-45881bd/
#浣跨敤phpize鍒濆嫔寲锛屾垜镄刾hpize鍦/opt/鐩褰
/opt/php/bin/phpize
#缂栬疟mysql镓╁𪾢锛屼娇鐢╩ysqlnativedriver浣滀负mysql阈炬帴搴
./configure--with-php-config=/opt/php/bin/php-config--with-mysql=mysqlnd
make&&makeinstall
3.鎺ヤ笅𨱒,鎴戜滑鐩存帴缂栬緫php.ini鏂囦欢锛屾妸mysql.so𨰾疯礉鍒皃hp.ini镄别xtension_dir涓锛岀劧钖庡湪php.ini涓锷犲叆extension=mysql.so
4.閲嶅惎php
鎴愬姛涔嫔悗锛岀敤phpinfo鍗冲彲鐪嫔埌mysql镓╁𪾢镄勪俊鎭:
灏忕粨
鐩稿逛簬PHP5锛岄兘璇碢HP7链夐潪甯稿ぇ镄勬ц兘鎻愬崌.濡傛灉鎭ㄨ缮鍦ㄤ娇鐢ㄥ叾瀹幂増链,鍙浠ュ崌绾т竴涓嬭瘯璇.
濡备綍鍦≒HP7涓瀹夎卪ysql镄勬墿灞
镙囩撅细contentcenter缃戠珯瀹夎卪ysqlloadimaidtext鎺ㄨ崘
③ php5和php7连接数据库的区别
PHP5中使用mysql_connect()函数进行连接,但实际上,PHP5.5开始,mysql系列函数就不推荐使用了,属于废弃函数
PHP7中貌似已经彻底不支持了,根据官网说明,取而代之的是如下两个:
本扩展自PHP5.5.0起已废弃,并在将来会被移除。应使用MySQLi或PDO_MySQL扩展来替换之。
$host='127.0.0.1';//主机名或IP地址
$user='root';//数据库用户
$database='cake';//数据库名
$password='root';//数据库密码
$mysqli=newmysqli($host,$user,$password,$database);
$query='SETNAMESUTF8';
$mysqli->query($query);
if($mysqli->errno){
print_f("连接数据库错误<br/>%s",$mysqli->error);
exit;
}
④ win10 php7 怎么弄mysql扩展
非常遗憾的告诉你,php7不支持MySQL扩展了,只有使用mysqli和pdo扩展,PHP.INI中取消下面两行前面的分号:
extension=php_mysqli.dll
extension=php_pdo_mysql.dll
⑤ debian8怎么安装php7
debian8 编译安装 php7
目录(?)[-]
Please reinstall the libcurl distributionCannot find OpenSSL
configure error Unable to locate gmph
Can not find recodeh anywhere under usr usrlocal usr optCannot find pspell
Please reinstall the mysql distribution
mcrypth not found Please reinstall libmcryptxml2-config not found
安装编译器
apt-get install build-essential autoconf automake libtool bison re2c获取PHP安装包
wget https://downloads.php.net/~ab/php-7.0.13RC1.tar.gz安装dev包
apt-get install libxml2-dev libssl-dev libbz2-dev libjpeg-dev libpng-dev libxpm-dev libfreetype6-dev libgmp-dev libgmp3-dev libmcrypt-dev libmysqlclient15-dev libpspell-dev librecode-dev进行编译安装
./buildconf //用来生成configure脚本
./configure \
--prefix=/usr \
--with-config-file-path=/etc \
--enable-mbstring \
--enable-zip \
--enable-bcmath \
--enable-pcntl \
--enable-ftp \
--enable-exif \
--enable-calendar \
--enable-sysvmsg \
--enable-sysvsem \
--enable-sysvshm \
--enable-wddx \
--with-curl \
--with-mcrypt \
--with-iconv \
--with-gmp \
--with-pspell \
--with-gd \
--with-jpeg-dir=/usr \
--with-png-dir=/usr \
--with-zlib-dir=/usr \
--with-xpm-dir=/usr \
--with-freetype-dir=/usr \
--with-t1lib=/usr \
--enable-gd-native-ttf \
--enable-gd-jis-conv \
--with-openssl \
--with-pdo-mysql=/usr \
--with-gettext=/usr \
--with-zlib=/usr \
--with-bz2=/usr \
--with-recode=/usr \
--with-mysqli=/usr/bin/mysql_config
备注:错误1:Cannot find OpenSSL's libraries 解决:
确认已安装过 openssl、libssl-dev 包,还是会提示该错误;解决办法:
root@test2:~/php-5.3.27# find / -name libssl.so输出结果为: /usr/lib/x86_64-linux-gnu/libssl.so初步判断它可能只会在 /usr/lib/ 下寻找 libssl.so 文件,于是:
ln -s /usr/lib/x86_64-linux-gnu/libssl.so /usr/lib错误2:debian Please reinstall the libcurl distribution 解决:
# RetHat CentOS or Fedora 使用下面安装命令yum install curl curl-devel
# Debian or Ubuntu使用下面的安装命令
apt-get install curl
apt-get install libcurl4-gnutls-dev
错误3:Unable to locate gmp.h 解决:
在https://launchpad.net/debian/+source/gmp 下载 gmp源码包,接着 ./configure && make && make install编译 安装
make &&make install
报错处理
Please reinstall the libcurl distributionaptitude search libcurl4
aptitude install libcurl4-gnutls-dev
Cannot find OpenSSL’
wget https://www.openssl.org/source/openssl-1.0.2j.tar.gztar -zxvf openssl-1.0.2j.tar.gz
cd openssl-1.0.2j
./config
make && make install
configure: error: Unable to locate gmp.h
sudo apt-get install libgmp-dev libgmp3-devln -s /usr/include/x86_64-linux-gnu/gmp.h /usr/include/gmp.hCan not find recode.h anywhere under /usr /usr/local /usr /opt.
apt-get install librecode-dev
Cannot find pspell
apt-get install libpspell-dev
Please reinstall the mysql distribution
apt-get install libmysqlclient15-dev
mcrypt.h not found. Please reinstall libmcrypt.
apt-get install libmcrypt-dev
xml2-config not found
apt-get install libxml2-dev
