當前位置:首頁 » 編程語言 » phpmysqli擴展

phpmysqli擴展

發布時間: 2022-07-06 00:00:24

1. 關於~~使用php的mysqli擴展庫操作資料庫 的問題

首先mysqli("
localhost
","root","1234");應該是個函數,不應該用new
關鍵字。
new
是來實例化對象的。
$link
=
mysqli_connect(
'localhost',
/*
The
host
to
connect
to
連接MySQL地址
*/
'user',
/*
The
user
to
connect
as
連接MySQL用戶名
*/
'password',
/*
The
password
to
use
連接MySQL密碼
*/
'world');
這個才是連接語句。

2. php里,mysqli擴展,用什麼取代mysql_result,比如說如下代碼mysqli擴展怎麼取代

$query=mysqli_query($con,'selectcount(*)fromdemo');
echomysqli_result($query,1);//

建議,mysqli擴展是mysql的oo思想,所以建議使用如下:

$mysqli=newmysqli("localhost","root","123","demo");//連接本地demo資料庫
if(mysqli_connect_errno()){
printf("連接失敗:%s<br>",mysqli_connect_error());
exit();
}
$mysqli->query("setnamesutf8");//設置字元集為utf-8
$result=$mysqli->query("selectcount(*)fromdemo");
echo$result->fetch_row();
$result->close();//關閉結果集
$mysqli->close();//關閉與資料庫的連接

當然還有pdo擴展也差不多

3. nginx和php 怎麼安裝mysqli擴展

在 centos 下編譯安裝 php 時,有時候經常會忘了某些擴展,比如 pdo,mysqli,但是到擴展目錄下,我們又找不到相應的 擴展文件,(.so 文件) ,這樣的情況下只能 編譯安裝該模塊,生成對應的 so 文件,然後在 php.ini 中添加相應的 擴展記錄,重啟 php就可以了,我們以安裝 mysqli 為例。
首先進入 php 源碼包 如果 找不到可以可下載一個 地址在這里:http://us2.php.net/get/php-5.2.17.tar.gz/from/a/mirror解壓
tar xvzf php-5.2.17.tar.gz
cdphp-5.2.17/ext/mysqli/
然後運行 php 安裝目錄下的 phpize
/usr/local/nginx_php-5.2.17/bin/phpize
(根據自己的 php 安裝目錄來查找,不一定是這個目錄,如果找不到,可以根據 phpinfo() 來查看)然後編譯安裝 mysqli 擴展
#./configure --prefix=/usr/local/mysqli --with-php-config=/usr/local/nginx_php-5.2.17/bin/php-config --with-mysqli=/usr/local/mysql/mysql_config安裝
make && make install
然後在 php 的擴展目錄下已經生成了 mysqli.so 文件打開 php.ini 文件,看是否有如下內容
extension_dir = "/usr/local/nginx_php-5.2.17/lib/php/extensions/no-debug-non-zts-20060613/"如果沒有就添加上
再添加一條:
extension=mysqli.so
保存。
重啟 php。可以看到 mysqli 已經安裝完成了。

4. 如何在php中擴展mysqli插件。

Mysqli是php5之後才有的功能,沒有開啟擴展的可以打開php.ini的配置文件
查找下面的語句:;extension=php_mysqli.dll將其修改為:extension=php_mysqli.dll即可。
相對於mysql有很多新的特性和優勢
(1)支持本地綁定、准備(prepare)等語法
(2)執行sql語句的錯誤代碼
(3)同時執行多個sql
(4)另外提供了面向對象的調用介面的方法。

5. 缺少 mysqli 擴展.請檢查 PHP 配置

打開你的php.ini->具體看你的安裝目錄。
找到
;extension=php_msql.dll

;extension=php_mssql.dll
extension=php_mysql.dll
extension=php_mysqli.dll
需要開啟哪個擴展,就把這一行前面的分號去掉就行,注意要重啟Apache 或者IIS

解決步驟:

1.看看php的ext目錄中是否有php_mysqli.dll文件
如果有,繼續下面的步驟。沒有的話重新裝個php
2.打開php.ini,找到
;extension=php_mysqli.dll把前面的;去掉

3.找到;extension_dir="./ext"

把前面的分號";"去掉,改為(相對於php的安裝路徑的ext目錄)
extension_dir = "e:phpext"
e:php為php的存放目錄
4.把php.ini拷貝到c:windows下
5.把libmysql.dll復制到Windows下面的System32目錄(這個很關鍵)
6.重新啟動IIS(不是網站)
cmd下運行 iisreset/RESTART
如果上面方法還不行,可參考下面方法操作
第一步,輸出 phpinfo() 看看 MySQL 模塊是否成功裝載,如果成功裝載說明你見鬼了,否則看第二步,
IIS下phpinfo()無mysql模塊是何原因?
原先用的php是.msi安裝的,後來全部重來了一次,換成壓縮包形式安裝的。
又照著配置了php.ini,復制到winnt,復制libmysql.dll到system32。
之後測試成功。。。
第二步,查看 extension_dir 的設置是否正確
第三步,查看是否把 libmysql.dll 文件復制到 c:windowssystem32 下
1、沒有正確安裝Mysql資料庫,在系統服務中Mysql相關的服務沒有啟動 (請查看正確安裝Mysql的方法)
2、在系統的 system32(C:windowssystem32) 目錄下缺少 libmysql.dll文件,解決方法是找到php目錄下的libmysql.dll,並將libmysql.dll復制到C:windowssystem32目錄中,然後重新啟動Web服務。

3、在C:windows目錄下的php.ini文件中,沒有將「;extension=php_mysql.dll」中的前面一個「;」去掉,所以不能使用相應功能,解決方法是打開php.ini文件

4、Mysql目錄沒有讀取許可權,正確的目錄許可權如下:

administrator 完全控制
system 完全控制
user 讀取加運行
其他的用戶許可權全部刪除(也可保留,但安全性不高,建議刪除),然後重啟MYsql服務和Web服務。

6. 騰訊雲伺服器下,怎麼安裝php的mysqli擴展

添加擴展的基本步驟:

1、進入php源代碼目錄:# cd /tmp/php-5.x.x/
2、再進入要添加的mysqli擴展源碼目錄:# cd ext/mysqli/
2、調用已經編譯好的php裡面的phpize:# /usr/local/php/bin/phpize
3、然後configure:# ./configure --with-php-config=/usr/local/php/bin/php-config --with-mysqli=/usr/local/mysql/bin/mysql_config
(/usr/local/mysql 為mysql的安裝目錄)
4、make && make install
5、編譯之後,自動把mysqli.so放到了默認的php擴展目錄下,我的為 /usr/local/php/lib/php/extensions/no-debug-non-zts-20xx0722/

(phpinfo可查看或者執行命令/usr/local/php/bin/php-config --extension-dir )

再修改php.ini 找到extension_dir 默認路徑為 extension_dir="./" 我修改後才啟動載入的

在下面添加extension = "mysqli.so" 保存即可

extension_dir="/usr/local/php/lib/php/extensions/no-debug-non-zts-20xx0722/"

extension = "mysqli.so"

6、重啟apache:# service httpd restart
求課吧有挺多IT編程類的教程的

7. PHP使用mysqli擴展連接MySQL資料庫

1.面向對象的使用方式
$db
=
new
mysqli('localhost',
'root',
'123456',
'dbname');
如果建立連接時未指定資料庫則選擇使用的資料庫,切換使用的資料庫
$db->select_db('dbname');
$query
=
"SELECT
*
FROM
user
WHERE
uid=4";
$result
=
$db->query($query);
$result_num
=
$result->num_rows;
$row
=
$result->fetch_assoc();
//返回一個關聯數組,可以通過$row['uid']的方式取得值
$row
=
$result->fetch_row();
//返回一個列舉數組,可以通過$row[0]的方式取得值
$row
=
$result->fetch_array();
//返回一個混合數組,可以通過$row['uid']和$row[0]兩種方式取得值
$row
=
$result->fetch_object();
//返回一個對象,可以通過$row->uid的方式取得值
$result->free();
//釋放結果集
$db->close();
//關閉一個資料庫連接,這不是必要的,因為腳本執行完畢時會自動關閉連接
當進行INSERT、UPDATE、DELETE操作時,使用$db->affected_rows查看影響行數
2.面向過程的使用方式
$db
=
mysqli_connect('localhost',
'root',
'123456',
'dbname');
如果建立連接時未指定資料庫則選擇使用的資料庫,切換使用的資料庫
mysqli_select_db($db,
'dbname');
查詢資料庫
$query
=
"SELECT
*
FROM
user
WHERE
uid=4";
$result
=
mysqli_query($db,
$query);
$result_num
=
mysqli_num_rows($result);
返回一行結果
$row
=
mysqli_fetch_assoc($result);
//返回一個關聯數組,可以通過$row['uid']的方式取得值
$row
=
mysqli_fetch_row($result);
//返回一個列舉數組,可以通過$row[0]的方式取得值
$row
=
mysqli_fetch_array($result);
//返回一個混合數組,可以通過$row['uid']和$row[0]兩種方式取得值
$row
=
mysqli_fetch_object($result);
//返回一個對象,可以通過$row->uid的方式取得值
斷開資料庫連接
mysqli_free_result($result);
//釋放結果集
mysqli_close($db);
//關閉一個資料庫連接,這不是必要的,因為腳本執行完畢時會自動關閉連接
當進行INSERT、UPDATE、DELETE操作時,使用mysqli_affected_rows()查看影響行數

8. php使用mysqli和pdo擴展,測試對比mysql資料庫的執行效率完整示例

本文實例講述了php使用mysqli和pdo擴展,測試對比mysql資料庫的執行效率。分享給大家供大家參考,具體如下:
<?php
/**
*
測試pdo和mysqli的執行效率
*/
header("Content-type:text/html;charset=utf-8");
//通過pdo鏈接資料庫
$pdo_startTime
=
microtime(true);
$pdo
=
new
PDO("mysql:host=localhost;dbname=test","root","1234",array(PDO::MYSQL_ATTR_INIT_COMMAND
=>
"SET
NAMES'utf8';"));
for($i=1;$i<=100;$i++){
$title
=
"pdo標題".$i;
$content
=
"pdo內容".$i;
$addtime
=
time();
$user_id
=
$i;
$pdo_sql
=
"INSERT
INTO
`article`(`title`,`content`,`addtime`,`user_id`)
VALUES(:title,:content,:addtime,:user_id)";
$sth
=
$pdo->prepare($pdo_sql);
$sth->bindParam(':title',$title);
$sth->bindParam(':content',$content);
$sth->bindParam(':addtime',$addtime);
$sth->bindParam(':user_id',$user_id);
$sth->execute();
}
$pdo_endTime
=
microtime(true);
$pdo_time
=
$pdo_endTime
-
$pdo_startTime;
echo
$pdo_time;
echo
"<hr/>";
//通過mysql鏈接資料庫
$mysqli_startTime
=
microtime(true);
$mysqli
=
mysqli_connect("localhost","root","1234","test")
or
die("數據連接失敗");
mysqli_query($mysqli,"set
names
utf8");
for($i=1;$i<=100;$i++){
$title
=
"mysqli標題".$i;
$content
=
"mysqli內容".$i;
$addtime
=
time();
$user_id
=
$i;
$sql
=
"INSERT
INTO
`article`(`title`,`content`,`addtime`,`user_id`)
VALUES('".$title."','".$content."',".$addtime.",".$user_id.")";
mysqli_query($mysqli,$sql);
}
$mysqli_endTime
=
microtime(true);
$mysqli_time
=
$mysqli_endTime
-
$mysqli_startTime;
echo
$mysqli_time;
echo
"<hr/>";
if($pdo_time
>
$mysqli_time){
echo
"pdo的執行時間是mysqli的".round($pdo_time/$mysqli_time)."倍";
}else{
echo
"mysqli的執行時間是pdo的".round($mysqli_time/$pdo_time)."倍";
}
測試結果:其實經過多次測試,pdo和mysqli的執行效率差不多。
更多關於PHP相關內容感興趣的讀者可查看本站專題:《PHP基於pdo操作資料庫技巧總結》、《php+mysqli資料庫程序設計技巧總結》、《php面向對象程序設計入門教程》、《php字元串(string)用法總結》、《php+mysql資料庫操作入門教程》及《php常見資料庫操作技巧匯總》
希望本文所述對大家PHP程序設計有所幫助。
您可能感興趣的文章:php使用mysqli和pdo擴展,測試對比連接mysql資料庫的效率完整示例php中資料庫連接方式pdo和mysqli對比分析php中關於mysqli和mysql區別的一些知識點分析php操作mysqli(示例代碼)php封裝的mysqli類完整實例PHP以mysqli方式連接類完整代碼實例php簡單解析mysqli查詢結果的方法(2種方法)php中mysql連接方式PDO使用詳解Php中用PDO查詢Mysql來避免SQL注入風險的方法php
mysql
PDO
查詢操作的實例詳解PHP實現PDO的mysql資料庫操作類

熱點內容
滑板鞋腳本視頻 發布:2025-02-02 09:48:54 瀏覽:433
群暉怎麼玩安卓模擬器 發布:2025-02-02 09:45:23 瀏覽:557
三星安卓12彩蛋怎麼玩 發布:2025-02-02 09:44:39 瀏覽:744
電腦顯示連接伺服器錯誤 發布:2025-02-02 09:24:10 瀏覽:537
瑞芯微開發板編譯 發布:2025-02-02 09:22:54 瀏覽:147
linux虛擬機用gcc編譯時顯示錯誤 發布:2025-02-02 09:14:01 瀏覽:240
java駝峰 發布:2025-02-02 09:13:26 瀏覽:652
魔獸腳本怎麼用 發布:2025-02-02 09:10:28 瀏覽:538
linuxadobe 發布:2025-02-02 09:09:43 瀏覽:212
sql2000資料庫連接 發布:2025-02-02 09:09:43 瀏覽:726