3 回答
TA贡献1829条经验 获得超9个赞
在大多数语言(包括 PHP)中,后面的任何内容=
(赋值运算符)都会在存储到给定变量之前进行计算。赋值运算符=
后面的任何内容;
都会被解析为表达式,并且该表达式可能包含函数调用。这些函数调用会立即计算,并且这些函数调用的结果将用于表达式的其余计算。
在您的情况下,mysqli_query()
调用函数并插入行,然后将返回的值存储mysqli_query()
在变量中$insert
。评估语句时不会调用它if
。
关于您的错误处理问题,每个连接一次运行 1 个查询,因此,如果您有多个查询,则需要运行一个查询,然后检查错误并连续执行此操作。
mysqli_error()
另外,就像 @Dharman 提到的那样,您应该谨慎使用,因为除非您知道并且有一个经过深思熟虑的用例,否则不希望在生产中使用它。
TA贡献1883条经验 获得超3个赞
您正在调用mysqli_query
并将结果存储在$insert
. 由于您使用的是插入语句,$insert
因此将包含 hasTRUE
或FALSE
,具体取决于插入语句是否成功。
TA贡献1880条经验 获得超4个赞
每个连接一次能够处理一个查询;这就是 MySQL 和其他客户端-服务器风格的数据库系统的工作方式。mysqli API 设计者决定通过连接对象而不是查询对象来访问错误。这是一个合理的决定;通常,像您这样的应用程序必须在运行新查询之前处理错误,因此在查询对象上保留错误意义不大。
错误由mysqli_query()
返回的返回值表示为假。如果它返回正确,你就可以用它做更多的事情。如果您不确定“假”和“真”,请查阅它们。
但是,从根本上讲,这些决定是 API 设计者尽最大努力创建有用的 API 所做出的决定。
(当然,您确实mysqli_query()
在代码示例中使用了..)
- 3 回答
- 0 关注
- 141 浏览
添加回答
举报