php7的数据库函数 php 数据库

php5和php7连接数据库的区别

PHP5中使用mysql_connect()函数进行连接,但实际上,PHP5.5开始,mysql系列函数就不推荐使用了,属于废弃函数

我们一直强调成都网站建设、网站建设对于企业的重要性,如果您也觉得重要,那么就需要我们慎重对待,选择一个安全靠谱的网站建设公司,企业网站我们建议是要么不做,要么就做好,让网站能真正成为企业发展过程中的有力推手。专业网络公司不一定是大公司,创新互联作为专业的网络公司选择我们就是放心。

PHP7中貌似已经彻底不支持了,根据官网说明,取而代之的是如下两个:

本扩展自 PHP 5.5.0 起已废弃,并在将来会被移除。应使用 MySQLi 或 PDO_MySQL 扩展来替换之。

$host = '127.0.0.1';//主机名或IP地址

$user = 'root';        //数据库用户

$database = 'cake';    //数据库名

$password ='root';    //数据库密码

$mysqli = new mysqli($host,$user,$password,$database);

$query = 'SET NAMES UTF8';

$mysqli-query($query);

if($mysqli-errno){

print_f("连接数据库错误br/ %s",$mysqli-error);

exit;

}

PHP7连接mysql数据库方法

1、用 mysql_connect 的方法,PHP7会报致命错误

$conn= mysql_connect('localhost','xueyanxiang','xueyanxiang');

Fatal error : Uncaught Error: Call to undefined function mysql_connect() in /Users/xueyanxiang/work/test/xue.php:31 Stack trace: #0 /Users/xueyanxiang/work/test/xue.php(119): xue-run() #1 {main} thrown in  /Users/xueyanxiang/work/test/xue.php  on line  31

原因是:

PHP5中使用mysql_connect()函数进行连接,但实际上,PHP5.5开始,MySQL就不推荐使用了,属于废弃函数

PHP7中貌似已经彻底不支持了,根据官网说明,取而代之的是如下两个:

本扩展自 PHP 5.5.0 起已废弃,并在将来会被移除。应使用 MySQLi 或 PDO_MySQL 扩展来替换之。参见 MySQL:选择

API 指南以及相关 FAQ 以获取更多信息。用以替代本函数的有:

mysqli_connect()

PDO::__construct()

使用时,不要在使用mysql_connect了,可以换用mysqli_connect(),用法基本类似吧,据说是面向对象的库。

php.ini中,也只有extension=php_mysqli.dll,而不再有extension=php_mysql.dll这个拓展了。

2、可以使用mysqli,对象化,方法名与被废弃的类似

$conn= mysqli_connect('localhost','xueyanxiang','xueyanxiang');

3、PDO工具,推荐使用

$dbh= "mysql:host=localhost;dbname=test";

$db= new PDO($dbh,'xueyanxiang','xueyanxiang');

$objQuery= $db-query("select * from user;");

$res= $objQuery-fetchAll(PDO::FETCH_ASSOC);

不填写参数的话,默认是关联和索引都有,如下图

如何正确理解PHP获取显示数据库数据函数

1、PHP获取显示数据库数据函数之 mysql_result()

mixed mysql_result(resource result_set, int row [,mixed field])

从result_set 的指定row 中获取一个field 的数据. 简单但是效率低.

举例:

$link1 = @mysql_connect("server1", 

"webuser", "password") 

or die("Could not connect 

to mysql server!");

@mysql_select_db("company") 

or die("Could not select database!");

$query = "select id, name 

from product order by name"; 

$result = mysql_query($query);

$id = mysql_result($result, 0, "id");

$name = mysql_result($result, 0, "name");

mysql_close();

注意,上述代码只是输出结果集中的第一条数据的字段值,如果要输出所有记录,需要循环处理.

for ($i = 0; $i = mysql_num_rows($result); $i++)

{

$id = mysql_result($result, 0, "id");

$name = mysql_result($result, 0, "name");

echo "Product: $name ($id)";

}

注意,如果查询字段名是别名,则mysql_result中就使用别名.

2、PHP获取显示数据库数据函数之mysql_fetch_row()

array mysql_fetch_row(resource result_set)

从result_set中获取整行,把数据放入数组中.

举例(注意和list 的巧妙配合):

$query = "select id, 

name from product order by name"; 

$result = mysql_query($query);

while(list($id, $name) 

= mysql_fetch_row($result)) {

echo "Product: $name ($id)";

}

3、PHP获取显示数据库数据函数之mysql_fetch_array()

array mysql_fetch_array(resource result_set [,int result_type])

mysql_fetch_row()的增强版.

将result_set的每一行获取为一个关联数组或/和数值索引数组.

默认获取两种数组,result_type可以设置:

MYSQL_ASSOC:返回关联数组,字段名=字段值 

MYSQL_NUM:返回数值索引数组.

MYSQL_BOTH:获取两种数组.因此每个字段可以按索引偏移引用,也可以按字段名引用.

举例:

$query = "select id,

name from product order by name";

$result = mysql_query($query);

while($row = mysql_fetch_array

($result, MYSQL_BOTH)) { 

$name = $row['name'];

//或者 $name = $row[1];

$name = $row['id'];

//或者 $name = $row[0];

echo "Product: $name ($id)";

}

4、PHP获取显示数据库数据函数之mysql_fetch_assoc()

array mysql_fetch_assoc(resource result_set)

相当于 mysql_fetch_array($result, MYSQL_ASSOC)

5、PHP获取显示数据库数据函数之mysql_fetch_object()

object mysql_fetch_object(resource result_set) 

和mysql_fetch_array()功能一样,不过返回的不是数组,而是一个对象.

举例:

$query = "select id, name 

from product order by name";

$result = mysql_query($query); 

while($row = mysql_fetch_object

($result)) {

$name = $row-name;

$name = $row-id;

echo "Product: $name ($id)";

}

以上这些函数就是PHP获取显示数据库数据函数的全部总结。


网站名称:php7的数据库函数 php 数据库
文章URL:http://csdahua.cn/article/ddjssis.html
扫二维码与项目经理沟通

我们在微信上24小时期待你的声音

解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流