我一直在执行一些随机测试用例,遇到以下错误:
警告:var_dump():在第6行的C:\ wamp64 \ www \ test \ index.php中尚不允许属性访问
这是测试代码:
<?php
$m = mysqli_connect('localhost', 'root');
$s = new mysqli_stmt($m);
var_dump($s);
如果我使用过程样式,则会发生相同的错误:
$s = mysqli_stmt_init($m);
我之前从未见过此错误消息,并且我认为测试用例没有问题。 (当然,此示例已简化为制作MCVE)。我找到了this answer,但对我来说还不够好。 var_dump()
仍会产生结果。
我找到的帖子引用了
如果语句准备不当或根本没有准备好,则此参数(以及mysqli_stmt中的任何其他参数)将引发错误消息“尚未允许属性访问”。
我试图了解在准备SQL语句之前尝试访问mysqli_stmt
的属性是否造成任何损害。对我来说很有趣,为什么设置了此警告。
我知道可以先准备查询,然后检查对象,以解决此问题,但是看起来好像不准备查询就不允许检查对象。我不知道如何解决它,而是想知道此错误的含义以及发生原因的原因。
我想找出此错误的含义,在调用我需要注意的prepare()
之前检查对象有什么重要的预防措施或副作用吗?