Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

eu criei arrays no PHP 5.6 com [] no PHP 7.1 dá erro fatal


A partir do PHP 7.1, quando você acessa uma variável não array (neste caso uma string) como um array, um erro fatal será lançado.

Inicialize o array primeiro, com $datos = []; . Isso substituirá tudo o que você definiu anteriormente e definirá explicitamente essa variável como uma matriz:
$result->execute();
$result->bind_result($id, $name);
$datos = [];
while($result->fetch()){
    $datos[]=array(
        $id => $name
    );
}

Se você está tentando criar um array de $id => $name , o seguinte código deve funcionar:
$result->execute();
$result->bind_result($id, $name);
$datos = [];
while($result->fetch()){
    $datos[ $id ] = $name;
}