Maison  >  Article  >  développement back-end  >  Comment résoudre l'erreur PHP : symbole ']' inattendu ?

Comment résoudre l'erreur PHP : symbole ']' inattendu ?

PHPz
PHPzoriginal
2023-08-26 17:55:58962parcourir

Comment résoudre lerreur PHP : symbole ] inattendu ?

Comment résoudre l'erreur PHP : symbole "]" inattendu ?

Introduction : Au cours du processus de développement PHP, nous rencontrons souvent diverses invites d'erreur. L'une des erreurs courantes est le "symbole "]" inattendu". Ce message d'erreur déroute souvent les débutants car la cause spécifique et la solution ne sont généralement pas claires. Cet article répondra à cette question en détail et fournira des exemples de code correspondants.

  1. Message d'erreur
    Lorsqu'un symbole "]" inattendu apparaît dans le code PHP, le message d'erreur suivant s'affichera :

    Parse error: syntax error, unexpected ']' in filename.php on line X

    Parmi eux, "filename.php" fait référence au nom du fichier PHP où l'erreur s'est produite, "X" fait référence au numéro de ligne du code où l'erreur s'est produite.

  2. Cause de l'erreur
    Cette erreur est généralement causée par le problème de structure d'un tableau, d'un tableau associatif ou d'un tableau d'index. Plus précisément, il peut s'agir des situations suivantes :
  3. L'index du tableau n'est pas valide ou il y a une erreur de syntaxe ;
  4. La paire clé-valeur du tableau n'est pas écrite dans le bon format ;
  5. Solution
    La résolution de cette erreur peut être divisée en deux situations.

3.1 L'index du tableau n'est pas valide ou il y a une erreur de syntaxe
Lorsque l'index du tableau n'est pas valide ou qu'il y a une erreur de syntaxe, vous pouvez suivre les étapes suivantes pour la résoudre :

Étape 1 : Vérifiez s'il y a une syntaxe erreur dans l'index du tableau, comme une virgule supplémentaire, une parenthèse droite supplémentaire, etc. ;

$names = array(
    "John",
    "Michael",
    "David",
    "Sarah",
); 

Dans cet exemple, en raison d'une virgule supplémentaire après le dernier élément, une erreur de symbole "inattendue "]" se produira.

La solution est de supprimer les virgules supplémentaires pour résoudre cette erreur :

$names = array(
    "John",
    "Michael",
    "David",
    "Sarah"
); 

Étape 2 : Confirmez si l'index du tableau est correct, par exemple en vérifiant s'il existe une variable, une fonction ou un nom de classe défini comme index.

$name = "John";
$age = 30;
$person = [
    $name,
    $age,
];

Dans cet exemple, puisque $name et $age sont des variables et ne peuvent pas être utilisés comme index de tableau, une erreur "symbole "]" inattendu" se produira.

La solution est de remplacer l'index légal du tableau, par exemple en utilisant un index numérique :

$name = "John";
$age = 30;
$person = [
    0 => $name,
    1 => $age,
];

3.2 La paire clé-valeur du tableau n'est pas écrite dans le format correct
Lorsque la paire clé-valeur du tableau n'est pas écrite dans le bon format, vous pouvez suivre les étapes suivantes Solution :

Étape 1 : Vérifiez si la paire clé-valeur du tableau utilise le format de syntaxe correct, c'est-à-dire sous la forme $key => $value.

$person = [
    "name": "John",
    "age" => 30,
];

Dans cet exemple, étant donné que la paire clé-valeur du tableau utilise un format de syntaxe incorrect, c'est-à-dire que des deux-points sont utilisés à la place du signe égal, une erreur de symbole "inattendue "]" se produit.

La solution est d'utiliser le format de syntaxe correct, c'est-à-dire d'utiliser le signe égal :

$person = [
    "name" => "John",
    "age" => 30,
];

Étape 2 : Vérifiez si le nom de clé est légal. Les constantes non définies ne peuvent pas être utilisées comme noms de clé.

define("PI", 3.14);
$person = [
    PI => "John",
    "age" => 30,
];

Dans cet exemple, puisque la constante PI n'est pas définie, une erreur de symbole "inattendue "]" se produira.

La solution est d'utiliser des noms de clés légaux, par exemple en utilisant des chaînes comme noms de clés :

define("PI", 3.14);
$person = [
    "PI" => "John",
    "age" => 30,
];

Résumé : pendant le processus de développement PHP, lorsqu'une erreur de symbole "inattendu "]" se produit, nous devons d'abord vérifier attentivement le code. Y a-t-il erreurs de syntaxe dans les index du tableau et les paires clé-valeur dans . Si la syntaxe du code est correcte, vous devez également vérifier si la structure du tableau est conforme à la spécification. En déterminant le type d'erreur et en suivant la solution appropriée pour la corriger, nous pouvons résoudre le problème et faire fonctionner le code PHP normalement.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn