匿名用户
1级
2018-12-04 回答
问题:
1. $con->query($ql) === TRUE 这段代码是什么意思
2. 是 如果什么什么为真则输出数据库创建成功 的意思吗?
3. 如果什么为真?
解答:
1. 功能是向数据库发送一条 MySQL 查询
2. 如果查询成则为真,否则为假
3. PDO方式不会为真;mysqli和mysql方式在进行INSERT, UPDATE, DELETE, DROP类似的查询成功后会返回真,否则返回假
以下是解答3的详细说明:
不确定这里是使用的数据库连接方式是PDO还是mysqli,或者是mysql(PHP 5.5.0已经被废弃的)
PDO方式:
$con->query($sql) === TRUE这种写法显然是错误的,手册上面的解释如下:
PDO::query() 返回 PDOStatement 对象,或在失败时返回 FALSE。也就是说上面的语句永远会失败
mysqli方式:
$con->query($sql) === TRUE上面的语句有可能成功,比如执行INSERT, UPDATE, DELETE, DROP类似的查询。
PHP手册解释如下:
mysqli::query()或mysqli_query()
失败时返回 FALSE,通过mysqli_query() 成功执行SELECT, SHOW, DESCRIBE或 EXPLAIN查询会返回一个mysqli_result 对象,其他查询则返回TRUE。
mysql方式:
$con->query($sql) === TRUE有可能成功,比如执行INSERT, UPDATE, DELETE, DROP类似的查询。
PHP手册解释如下:
mysql_query() 仅对 SELECT,SHOW,DESCRIBE, EXPLAIN 和其他语句 语句返回一个 resource,如果查询出现错误则返回 FALSE。
对于其它类型的 SQL 语句,比如INSERT, UPDATE, DELETE, DROP 之类, mysql_query() 在执行成功时返回 TRUE,出错时返回 FALSE。
最后
需要多多查看PHP手册,掌握函数的使用方法。掌握函数的三要素:
方法名,参数,返回值