J'ai un tableau comme ci-dessous qui est généré en analysant une URL xml.
Le tableau est
Array
(
[Tags] => SimpleXMLElement Object
(
[0] =>
)
)
Le nom du tableau est $result
. Maintenant, je veux vérifier que si le tableau reçu comme ci-dessus, je veux imprimer un message d'échec. Mais comment vérifier ce tableau si condition?
vous pouvez utiliser
empty($result)
pour vérifier si le tableau principal est vide ou non.
Mais puisque vous avez un objet SimpleXMLElement, vous devez interroger l'objet s'il est vide ou non. Voir http://www.php.net/manual/en/simplexmlelement.count.php
ex:
if (empty($result) || !isset($result['Tags'])) {
return false;
}
if ( !($result['Tags'] instanceof SimpleXMLElement)) {
return false;
}
return ($result['Tags']->count());
Corrigée;
/*
return true if the array is not empty
return false if it is empty
*/
function is_array_empty($arr){
if(is_array($arr)){
foreach($arr as $key => $value){
if(!empty($value) || $value != NULL || $value != ""){
return true;
break;//stop the process we have seen that at least 1 of the array has value so its not empty
}
}
return false;
}
}
this check if array is empty
if (!empty($result) {
// do stuf if array is not empty
}else{
// do stuf if array is empty
}
this check array is null or not
if (is_null($result) {
// do stuf if array is null
}else{
// do stuf if array is not null
}
Code droit de deux personnes avant ^ _ ^
/* return true if values of array are empty
*/
function is_array_empty($arr){
if(is_array($arr)){
foreach($arr as $value){
if(!empty($value)){
return false;
}
}
}
return true;
}
Je comprends ce que tu veux. Vous voulez vérifier toutes les données du tableau si toutes sont vides ou si au moins 1 n'est pas vide
tableau vide
Tableau ([Tags] => Objet SimpleXMLElement ([0] =>))
Pas un tableau vide
Tableau ([Tags] => Objet SimpleXMLElement ([0] =>, [1] => "s"))
J'espère avoir raison. Vous pouvez utiliser cette fonction pour vérifier toutes les données d'un tableau si au moins 1 d'entre elles a une valeur.
/*
return true if the array is not empty
return false if it is empty
*/
function is_array_empty($arr){
if(is_array($arr)){
foreach($arr $key => $value){
if(!empty($value) || $value != NULL || $value != ""){
return true;
break;//stop the process we have seen that at least 1 of the array has value so its not empty
}
}
return false;
}
}
if(is_array_empty($result['Tags'])){
//array is not empty
}else{
//array is empty
}
J'espère que cela pourra aider.
si le tableau ressemble à ceci [null] ou [null, null] ou [null, null, null, ...]
vous pouvez utiliser imploser:
implode est utilisé pour convertir le tableau en chaîne.
if(implode(null,$arr)==null){
//$arr is empty
}else{
//$arr has some value rather than null
}