IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Comment controler si un texte est dans un tableau [PHP 5.3]


Sujet :

Langage PHP

  1. #1
    Débutant  
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 102
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 102
    Points : 953
    Points
    953
    Par défaut Comment controler si un texte est dans un tableau
    Bonjour,
    J'ai un peu de mal a faire le controle d'un contenu dans un tableau.
    J'ai ceci qui va lister le contenu d'un tableau (ceci fonctionne très bine):

    Code PHP : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    foreach($this as $attribut => $val){			
    	if(!empty($val) AND ($attribut != "select") AND $attribut != "option"){		
    		echo $attribut_ = str_replace("sct_","",$attribut).'="'.$val.'" ';
    	}
    			//foreach($this->select_reserved_attributs as)
    }
    J'aimrais remplacer ceci:
    Code PHP : Sélectionner tout - Visualiser dans une fenêtre à part
    AND ($attribut != "select") AND $attribut != "option"

    Par un code qui va controler le contenu d'aun tableau:
    Code PHP : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    protected $select_reserved_attributs=array(
    	'select_reserved_attributs',
    	'option_reserved_attributs',
    	'select',
    	'option',
            'sct_title'
    	);
    En francais parlé, j'aimerai que
    Si !empty($val) et $attribut n'est pas egal a une des valeurs contenues dans tableau $select_reserved_attributs

    Code PHP : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    if(!empty($val) AND $attribut != [a une valeur contenue dans tableau $select_reserved_attributs] ){
     echo $attribut_ = str_replace("sct_","",$attribut).'="'.$val.'" ';
    }

    Pourriez-vous m'aider a faire ce check?

    Milles mercis

  2. #2
    Invité
    Invité(e)
    Par défaut
    Salut

    La fonction in_array() est ton amie

  3. #3
    Débutant  
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 102
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 102
    Points : 953
    Points
    953
    Par défaut
    Super, merci,

    Mais en fait, je dois voir si "elle n'existe" pas.

    Alors j'ai essayé !in_array(), mais je n'ai pas de resultat concluant
    Code PHP : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    foreach($this as $attribut => $val){
    	//if(!empty($val) AND ($attribut != "select") AND $attribut != "option" AND !ereg("opt_",$attribut)){		
     
    	if(!empty($val) AND !ereg("opt_",$attribut) AND !in_array($attribut, $select_reserved_attributs)){		
     
    	echo $attribut_ = str_replace("sct_","",$attribut).'="'.$val.'" ';
     
    }
     
    }
    en sachant que
    Code PHP : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    protected $select_reserved_attributs=array(
    	'select_reserved_attributs',
    	'option_reserved_attributs',
    	'select',
    	'option'
    	);

    je regarde en meme temps, s'il n'y a pas une fonction qui fait l'inverse

  4. #4
    Débutant  
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 102
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 102
    Points : 953
    Points
    953
    Par défaut
    oui mais en fait, en deux mot,

    Ca doit tout afficher sauf ce qu'il y a dans $select_reserved_attributs

  5. #5
    Débutant  
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 102
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 102
    Points : 953
    Points
    953
    Par défaut
    En fait j'avais une erreur dans mon code.
    Ca marche avec !in_array.

    je devais fair ainsi:
    Code PHP : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    foreach($this as $attribut => $val){
    	//if(!empty($val) AND ($attribut != "select") AND $attribut != "option" AND !ereg("opt_",$attribut)){		
     
    	if(!empty($val) AND !ereg("opt_",$attribut) AND !in_array($attribut, this->select_reserved_attributs)){		
     
    	echo $attribut_ = str_replace("sct_","",$attribut).'="'.$val.'" ';
     
    }
     
    }

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [3D] Comment savoir si un point est dans mon champ de vision
    Par patmaba dans le forum Développement 2D, 3D et Jeux
    Réponses: 10
    Dernier message: 04/11/2018, 14h20
  2. [RegEx] Comment contrôler si un texte est contenu dans un mot
    Par pierrot10 dans le forum Langage
    Réponses: 6
    Dernier message: 28/01/2014, 17h39
  3. Comment tester qu'une valeur est dans un tableau ?
    Par Pierrot92320 dans le forum MATLAB
    Réponses: 3
    Dernier message: 18/04/2009, 19h59
  4. Réponses: 1
    Dernier message: 14/06/2006, 19h56
  5. Comment controler l'insertion de record dans ma table?
    Par einegel dans le forum Bases de données
    Réponses: 7
    Dernier message: 22/11/2004, 19h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo