我已经尝试了这里建议的解决方案,但警告仍然存在。这是产生问题的代码:
$qryResults = array();
$qryResults[$sqlidx]->numrows = 0; [This is the line pointed to by the warning message]
$qryResults[$sqlidx]->numcols = odbc_num_fields($resultSets[$sqlidx]);
字符串
还有另一个对$qryResults数组的引用,它保存了DB读取的结果:
$qryResults[$sqlidx]->fields[$qryResults[$sqlidx]->numrows][$j] = date('m/d/Y H:i:s',odbc_result($resultSets[$sqlidx], $j + 1));
型
第一次使用数组时出现警告(numrows=0)PHP版本为7.4.3,运行于Ubuntu 20.04$qryResults
保存来自MSSQL选择命令的多个查询。
出现的警告并不妨碍代码正常工作,但我不知道如何摆脱警告。(我不喜欢松散的结尾:-))
我最初没有数组赋值,这导致了第一次观察到警告。
然后我尝试将数组定义为“stdClass”,结果是:
PHP Fatal error:Uncaught Error:Cannot use object of type stdClass as array
这是我在谷歌上搜索这个警告时找到的两个选项。
1条答案
按热度按时间fwzugrvs1#
你的问题是:
字符串
您正在尝试:
1.将变量初始化为空数组
1.然后试图找到一个不存在的项目,并设置属性,如
numrows
的不存在的项目。这不是生产就绪代码,而是为了澄清什么是有效的:
型
或
型