2017-03-09 116 views
-5

我对PHP开发非常陌生,我在想什么是执行MySQLi查询的正确方法。以下是我在网上从教程和资源中注意到的两件事情。运行MySQL查询的正确方法

基本上这个存储一切变量;

//$con is a database connection 
$query = mysqli_query($con, "SELECT* FROM table"); 

那么这一个存储的语法,然后使用它的mysqli_query()语句

$query = "SELECT* FROM table"; 
mysqli_query($con, $query); 

当代码运行,即使它只是存储在一个变量将在第一个还是执行运行?

+1

'基本上这一个存储在一个变量的一切;' - 是......也不是。不直接。它将'mysqli_query'的结果存储在变量'$ query'中。两个示例的工作方式都完全相同。他们之间并没有真正的区别。我会一直推荐第二个,因为如果你需要第二次使用你的查询,你可以改变这个'$ query'字符串一次,并且你不必在每个'mysqli_query'函数中找到每个单一的查询。 – Twinfriends

+0

^那么说。无论语法如何,您仍然必须以您打算使用它们的任何方式获取结果。 –

+0

*“代码运行时,第一个仍然会执行,即使它只存储在变量中?”* ** A:**只有在没有错误的情况下。 –

回答

0

请访问: http://php.net/manual/en/mysqli.query.php

mysqli_query()

失败

返回FALSE。对于成功的SELECT,SHOW,DESCRIBE或EXPLAIN查询,mysqli_query()将返回一个mysqli_result对象。对于其他成功的查询,mysqli_query()将返回TRUE。

为了使用mysqli_result对象或测试句子是否失败,您必须保存mysqli_query()的返回值。

http://php.net/manual/en/class.mysqli-result.php

所以要执行的代码的正确方法是:

//$con is a database connection 
$query = mysqli_query($con, "SELECT* FROM table"); 

if(!$query) { 
    // iterate the variable 
}