php使用mysqli面向对象的API操作数据库,源码和代码解释如下:
<?php
$mysqli = new mysqli (\"localhost\",\"root\",\"\",\"mydata \"); ////创建连接
try{
if(mysqli_connect_errno()){//检查连接是否被创建
throw new exception (\"Error: \".mysqli_connect_errno().\"-\".mysqli_connect_error());
}else{
if($cdquery = $mysqli->query (\"SELECT * FROM mytable ORDER BY id ASC\")){//执行查询
while($cddata=$cdquery->fetch_array()){//获取查询结果数据
echo \"ID: \" . $cddata[\'id\'] . \"<br />\";
echo \" : \" . stripslashes ($cddata[\' \']) . \"<br />\";
echo \"MyValue: \" . stripslashes ($cddata[\'MyValue\']) . \"<br />\";
}
$cdquery->close();//关闭结果集
}else{
echo $mysqli->errno.\"-\".$mysqli->error;
}
/*$mysqli->prepare
* 创建一个准备查询语句:
* ?是个通配符,可以用在任何有文字的数据
* 相当于一个模板,也就是预备sql语句
*/
$prep = $mysqli->prepare (\"INSERT INTO mytable(id, ,myvalue) VALUES (\'0\',?,?)\");
/*$prep->bind_param 第一个参数是绑定类型,\"s\"是指一个字符串,也可以是\"i\",指的是int。也可以是\"db\",
* d代表双精度以及浮点类型,而b代表blob类型,第二个参数是变量
*/
$prep->bind_param(\'ss\',$ ,$myvalue);
//给变量$ 、$myvalue赋值
$ = \"AA\";
$myvalue = 20;
//执行准备语句
$prep->execute();
//显示插入的语句
echo $prep->affected_rows . \" row(s) affected.\";
$prep->close();
if($result = $mysqli->prepare (\"SELECT , myvalue FROM mytable WHERE id > 2\")){
$result->execute ();
$result->bind_result ($ ,$myvalue);
while ($result->fetch()){
echo \" : \" . stripslashes ($ ) . \"<br />\";
echo \"MyValue: \" . stripslashes ($myvalue) . \"<br />\";
}
$result->close ();
}else{
echo $mysqli->errno . \" - \" . $mysqli->error;
}
//关闭数据库的链接
$mysqli->close();
}
}catch(exception $e){
echo $e->getmessage();
}
?>
说明:mysqli对prepare的支持对于大访问量的网站是很有好处的,它极大地降低了系统开销,而且保证了创建查询的稳定性和安全性。
继续阅读与本文标签相同的文章
上一篇 :
查阅了十几篇学习资源后,我总结了这份AI学习路径
下一篇 :
php使用mysqli扩展类的面向过程操作数据库
-
华为高管彭博:正与美国公司就授权5G平台展开初期谈判
2026-05-14栏目: 教程
-
微信曝光新功能,超好用,再也不用担心被刷屏
2026-05-14栏目: 教程
-
Verizon为美国多座大型体育场馆提供了5G网络覆盖
2026-05-14栏目: 教程
-
别人加薪你加班,偷偷告诉你 6 个Word小技巧,比加薪都管用!
2026-05-14栏目: 教程
-
华为轮值董事长郭平:虚拟技术创造现实价值
2026-05-14栏目: 教程
