Je suis dans une liaison, plusieurs fois sur une page pour différents éléments de formulaire, j'insère une classe css div dans un élément de formulaire SEULEMENT si un tableau d'erreur La clé existe, c'est ainsi que je souligne un élément de formulaire qui contient une erreur. Fonctionne bien, si j'ai une erreur, car alors mon tableau d'erreur est défini, le problème est avant qu'une erreur soit définie, il essaie de rechercher une clé de tableau qui n'existe pas. Je pensais que l'utilisation de la fonction isset de php serait d'abord le ticket mais je suppose que vous ne pouvez pas combiner isset avec une autre fonction?Comment puis-je vérifier qu'une clé de tableau existe si le tableau n'existe pas en PHP?
<?php
//this works
$search_array = array('first' => 1, 'second' => 4);
if (array_key_exists('first', $search_array)){
echo "good";
}
// this does not work, will give write errors
$search_array = array('first' => 1, 'second' => 4);
if (isset(array_key_exists('first', $search_array))){
echo "good";
}
// Here is 1 example how I need to make the end result work
$country_class = (array_key_exists('country', $signup_errors)) ? ' signup_error' : ' signup_good';
echo '<select name="country" id="country" class="textarealong ' .$country_class. '"/>';
?>
Dans d'autres parties que je l'utilise comme celui-ci
<?PHP echo(array_key_exists('password', $signup_errors)) ? ' signup_error' : ' signup_good';?>
Et je dois avoir ce soit un code 1 ligne si possible
également au sujet de votre commentaire, ne pas initialiser cette variable? – JasonDavis
Non, car même si 'array_key_exists' auto-vivifie $ signup_errors (et je suis sûr que ce n'est pas le cas), alors l'échec de' isset() 'l'empêchera de s'exécuter du tout. 'isset()' n'est évidemment pas autorisé à vivifier les variables qu'il teste. – Guss