Maison  >  Article  >  développement back-end  >  Comment résoudre un index non défini en php

Comment résoudre un index non défini en php

(*-*)浩
(*-*)浩original
2019-10-12 13:58:1510708parcourir

Comment résoudre un index non défini en php

Les problèmes d'index généralement non définis sont causés par le fait que le tableau n'a pas cette valeur . Les tableaux sont divisés en tableaux associatifs et tableaux d'index. Les tableaux associatifs sont des indices clé-valeur.

$POST['id'] signale un index non défini car le tableau $POST ne contient pas de valeur avec l'identifiant de la valeur de la clé d'indice. (Apprentissage recommandé : Tutoriel vidéo PHP)

Solution :

Déterminez si le tableau contient une valeur avec l'identifiant de valeur de clé d'indice, si Si non, un message d'erreur sera renvoyé. Comment juger ? Le moyen le plus simple est d'utiliser la fonction isset pour juger, comme isset($POST['id']). be false;

La méthode de jugement ternaire ne donne pas de valeur par défaut, telle que $POST['id'] = isset($POST['id'])?$POST['id']:" 1";

Cette notification apparaît lorsque vous (ou PHP) essayez d'accéder à un index non défini d'un tableau.

Moyen de résoudre le problème :

Vérifiez si l'index existe avant d'y accéder. Vous pouvez utiliser isset() ou array_key_exists() pour cela :

//isset()$value = isset($array['my_index']) ? $array['my_index'] : '';
//array_key_exists()$value = array_key_exists('my_index', $array) ? $array['my_index'] : '';

La construction du langage list() peut générer ceci en essayant d'accéder à un index de tableau inexistant :

list($a, $b) = array(0 => 'a');//orlist($one, $two) = explode(',', 'test string');

Deux variables pour accéder à deux éléments du tableau, mais il n'y a qu'un seul élément du tableau à l'index 0, donc cela générera :

Remarque : décalage non défini : 1

$_POST/ $ _GET/ $_SESSION variable

Lors de l'utilisation de $_POST, les considérations ci-dessus apparaissent souvent, $_GET ou $_SESSION.

Pour votre $_POST, $_GET il vous suffit de vérifier si l'index existe avant de l'utiliser. À cause de $_SESSION, vous devez vous assurer de commencer par session_start() et que l'index existe également.

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