musqli擴充套件庫操作mysql資料庫步驟:
//語法 mysqli_connect(host,username,password,dbname,port,socket);
$conn=mysqli_connect("127.0.0.1",'root','','user');
if (!$conn
)
//語法:mysqli_set_charset(connection,charset);
// 修改資料庫連線字符集為 utf8
mysqli_set_charset($conn,"utf-8") ;
//查詢語句$sql="select * from user1";
//執行sql語句
$res=mysqli_query($conn,$sql
);
//\列印返回結果為乙個結果集
var_dump($res
);結果集:
object(mysqli_result)#
2 (5)
echo "
";
echo "----".$res->num_rows;
//取結果集的資料
while ($obj = mysqli_fetch_object($res
))
echo "
"; }
函式名說明
mysqli_fetch_assoc($result)
查詢到的一條資料以關聯陣列形式返回 [key]=>value
mysqli_fetch_row($result) 依次取出$res結果集的下一行資料
查詢到的一條資料以索引陣列形式返回 [0]=>value
mysqli_fetch_array($result)
查詢到的一條資料以索引陣列和關聯陣列的混合形式返回[key]=>valuec/[0]=>value
mysqli_fetch_object($result)
查詢到的一條資料以物件屬性的形式返回 object
mysqli_fetch_array($result)
查詢到的一條資料以索引陣列和關聯陣列的混合形式返回
mysqli_fetch_array($result,mysqli_both)
查詢到的一條資料以索引陣列和關聯陣列的混合形式返回
mysqli_fetch_array($result,mysqli_assoc)
查詢到的一條資料以關聯陣列的混合形式返回
mysqli_fetch_array($result,mysqli_row)
查詢到的一條資料以索引陣列的混合形式返回
$sql="insert into user1(name,password,email,age)values ('haha',md5('123456'),'[email protected]',16);";$res=mysqli_query($conn,$sql) or die("執行失敗");
var_dump($res
);//
返回的是乙個布林值
if (!$res
)
echo "受影響的行數: " . mysqli_affected_rows($conn
);
if(mysqli_affected_rows($conn)>0)
else
注意:釋放結果集和關閉連線內填的資源不一樣
//釋放結果集
mysqli_free_result($res
);
//函式關閉先前開啟的資料庫連線
mysqli_close($conn);
sqltool.class.php
<?phpclass
sqltool
mysqli_set_charset(
$this->conn,"utf8");
}//執行dml語句,並返回值
function excute_dml($sql
)else
else}}
//執行dql語句,並返回值
function excute_dql($sql
) }
testsql.php
<?phprequire "sqltool.class.php";
//$sql="insert into user1(name,password,email,age) values('hhhhhh',md5('123'),'[email protected]',22)";
$sql="delete from user1 where name='qq'";
$sqltool=new
sqltool();
//呼叫dml
$res=$sqltool->excute_dml($sql
);
if ($res==0)
else
if ($res==1)
else
if ($res==2)
$sql1="select * from user1";
//呼叫dql
$res1=$sqltool->excute_dql($sql1
);
//var_dump($res1);
if ($res1->num_rows>0)
echo "
"; }
}?>
mysqlitest.php
<?php//物件導向
$conn=new mysqli("127.0.0.1","root","","test");
if ($conn->connect_errno)
$sql="select * from user1";
$res=$conn->query($sql
);
while ($row=$res->fetch_row())
}$res->free();
$conn->close();
?>
封裝
sqliconnection.class.php
<?phpclass
sqlconnect
$this->mysqli->query("set names utf8");
}//查詢
public
function excete_dql($sql
)
public
function excete_dml($sql
)else
else}}
}?>
sqlitest.php
<?phprequire "sqliconnection.class.php";
$sqlconnect=new
sqlconnect();
//插入記錄
$sql1="insert into user1(name,password,email,age)values('asd','555','[email protected]','23');";
$res1=$sqlconnect->excete_dml($sql1
);
if ($res1=="0")
elseif ($res1=="1")
elseif ($res1=='2')
//查詢記錄
$sql="select * from user1";
$res=$sqlconnect->excete_dql($sql
);
while ($row=$res->fetch_row())
echo "
"; }
$res->free();
//$sqlconnect->close();
?>
MySQLi基於面向過程的程式設計
mysqli在windows上,對於php 5.3或更新版本,mysqli擴充套件預設開啟,對於php 5.0 5.1 5.2,mysqli擴充套件預設並不會開啟,因此php.ini中php mysqli.dll這個dll 必須開啟。mysqli基於面向過程的程式設計和物件導向的程式設計是相對的,其...
MySQLi基於面向過程的程式設計
mysqli在windows上,對於php 5.3或更新版本,mysqli擴充套件預設開啟,對於php 5.0 5.1 5.2,mysqli擴充套件預設並不會開啟,因此php.ini中php mysqli.dll這個dll 必須開啟。mysqli基於面向過程的程式設計和物件導向的程式設計是相對的,其...
MySQLi基於物件導向的程式設計
mysqli在windows上,對於php 5.3或更新版本,mysqli擴充套件預設開啟,對於php 5.0 5.1 5.2,mysqli擴充套件預設並不會開啟,因此php.ini中php mysqli.dll這個dll 必須開啟。mysqli基於面向過程的程式設計和物件導向的程式設計是相對的,其...