我得到" PHP注意:未定义的索引:公司"当我运行一个脚本时,这是一个坏的部分,我该如何修复呢?
while ($row = $consulta->fetch(PDO::FETCH_ASSOC)) {
$numer = $row['fonefull'];
$sql = "SELECT company FROM numeros.portados WHERE number = '$numer' LIMIT 1";
$result = $conn->query($sql);
echo $sql;
$operadoraResult = $consulta->fetch(PDO::FETCH_ASSOC);
if(is_array($operadoraResult))
$resultcompany = $operadoraResult['company'];
由于
答案 0 :(得分:1)
尝试
if(!empty($operadoraResult))
答案 1 :(得分:0)
通知有点像警告说“嘿,这不会导致一个会自行破坏任何问题的问题,但你可能会对一个不正确的变量做出假设”
就像你可以假设某个值实际存在于该索引中一样,但是如果索引不存在,那么你实际上已经返回NULL。
您可以通过更改php的错误报告级别来更改是否显示通知。您可以通过编辑php.ini文件中的display_errors值来执行此操作,也可以使用error_reporting函数在运行时更改。
在这个具体案例中,它让你知道在这一行:
$resultcompany = $operadoraResult['company'];
您正试图访问索引'company'的数组$ operadoraResult中的元素,但'company'中没有索引。
答案 2 :(得分:0)
数组$ operadoraResult没有关键公司的元素。
如果更改会发生什么:
$result = $conn->query($sql);
echo $sql;
$operadoraResult = $consulta->fetch(PDO::FETCH_ASSOC);
if(is_array($operadoraResult))
$resultcompany = $operadoraResult['company'];
进入这个:
foreach ($conn->query($sql) as $operadoraResult)
{
if(is_array($operadoraResult))
$resultcompany = $operadoraResult['company'];
}