[Résolu] Php : simplification code

Discussion dans 'Développement d'un site Web ou d'une appli mobile' créé par salva, 31 Mars 2010.

  1. salva
    salva WRInaute accro
    Inscrit:
    16 Avril 2006
    Messages:
    3 425
    J'aime reçus:
    0
    Bonjour,

    J'ai bricolé une fonction et je souhaiterai simplifier la seconde condition du if.
    Code:
                  <?php
                   $mesUrls = $_SERVER['REQUEST_URI'];
                   if( count($this->headerMethods)&&($mesUrls == '/list/11' || $mesUrls == '/list/14' || $mesUrls == '/list/25' || $mesUrls == '/list/31' || $mesUrls == '/list/36' || $mesUrls == '/list/42' || $mesUrls == '/list/47' || $mesUrls == '/list/54' || $mesUrls == '/list/61' || $mesUrls == '/list/66' || $mesUrls == '/list/71' || $mesUrls == '/list/76' || $mesUrls == '/list/85' || $mesUrls == '/list/94' || $mesUrls == '/list/100' || $mesUrls == '/list/105' || $mesUrls == '/list/114' || $mesUrls == '/list/123' || $mesUrls == '/list/132' || $mesUrls == '/list/141' || $mesUrls == '/list/150' || $mesUrls == '/list/159' || $mesUrls == '/list/168' || $mesUrls == '/list/176') )
                       {
                         echo "";
                       }
                   else
                       {
                         echo "<span class='headermethod'>&nbsp;";
                         echo implode(" | \n", $this->headerMethods);
                         echo "&nbsp;</span>";
                       }
                  ?>
    Merci à ceux qui pourront m'aider.
     
  2. jcaron
    jcaron WRInaute accro
    Inscrit:
    13 Février 2004
    Messages:
    2 579
    J'aime reçus:
    0
    Re: Php : simplification code

    Je te mets juste le bout important:

    preg_match('#^/list/(11|14|25|31|36|etc.|176)$#',$mesUrls)

    Sinon tu peux faire un tableau associatif avec la liste des numéros associatifs, faire un preg_match('#^/list/(\d+)$#',$mesUrls,$matches) et regarder si $tableau[$matches[1]] existe.

    Jacques.
     
  3. salva
    salva WRInaute accro
    Inscrit:
    16 Avril 2006
    Messages:
    3 425
    J'aime reçus:
    0
    Re: Php : simplification code

    Merci Jacques, nickel chrome.
     
  4. Nic'O
    Nic'O WRInaute discret
    Inscrit:
    13 Mai 2009
    Messages:
    180
    J'aime reçus:
    0
    Re: Php : simplification code

    Seconde solution également passer la seconde condition dans un switch, ca sera plus "sexy".
     
  5. salva
    salva WRInaute accro
    Inscrit:
    16 Avril 2006
    Messages:
    3 425
    J'aime reçus:
    0
    Re: Php : simplification code

    Comme je suis curieux, en quoi ce serait plus sexy ? A la lecture ou en efficacité ?
     
  6. Nic'O
    Nic'O WRInaute discret
    Inscrit:
    13 Mai 2009
    Messages:
    180
    J'aime reçus:
    0
    à la lecture dans un premier temps, gain de temps au débugage, etc.
    Coté perf, j'ai pas testé mais ca doit être kiff je pense.
     
  7. salva
    salva WRInaute accro
    Inscrit:
    16 Avril 2006
    Messages:
    3 425
    J'aime reçus:
    0
    Intéressant mais comme il s'agit d'un besoin ponctuel je vais m'en tenir au preg_match de Jacques.
    Merci quand même.
     
  8. jcaron
    jcaron WRInaute accro
    Inscrit:
    13 Février 2004
    Messages:
    2 579
    J'aime reçus:
    0
    Si tu as beaucoup de numéros différents, je pense que la solution du preg_match et du tableau associatif doit être la plus rapide et la plus lisible. En tous cas en perl ce serait le cas, on peut espérer que l'implémentation des tableaux associatifs de php est efficace.

    Jacques.
     
Chargement...
Similar Threads - [Résolu] Php simplification Forum Date
Problème images en https (forum phpbb) [résolu] Développement d'un site Web ou d'une appli mobile 18 Novembre 2017
[RESOLU] récupérer les images d'un dossier en php Développement d'un site Web ou d'une appli mobile 29 Novembre 2014
[Résolu] Reconnaître un Doctype en PHP Développement d'un site Web ou d'une appli mobile 25 Juillet 2012
Convertir texte pour URL en PHP [Résolu] Développement d'un site Web ou d'une appli mobile 8 Mai 2012
[PHP] Détecter l'OS, le navigateur et la langue [Résolu] Développement d'un site Web ou d'une appli mobile 4 Mars 2012
[résolu] phpmyadmin et OVH mutu : limitation ? Administration d'un site Web 7 Avril 2011
[Résolu] Formatter une chaine (php) Développement d'un site Web ou d'une appli mobile 14 Février 2011
[Résolu] Gestionnaire de maintenance en PHP pour son site Administration d'un site Web 26 Septembre 2010
[RESOLU] [PHP] Lire une position précise à une ligne précise Développement d'un site Web ou d'une appli mobile 28 Juillet 2010
[Résolu] - php - URL Rewriting chez free (free.fr) Développement d'un site Web ou d'une appli mobile 23 Juillet 2010
[RESOLU] Pas d'accès à certaines tables sous PhpMyAdmin Administration d'un site Web 28 Juin 2010
[Résolu] Lire une ligne spécifique (PHP).. Développement d'un site Web ou d'une appli mobile 20 Juin 2010
[Résolu] Un petit remplacement en PHP ! Développement d'un site Web ou d'une appli mobile 15 Juin 2010
[Résolu] Redirection 301 en PHP non prise en compte (code 200 à la place mais redirection) Débuter en référencement 16 Avril 2010
[résolu] Intégrer un phpBB3 dans une charte graphique Développement d'un site Web ou d'une appli mobile 2 Avril 2010
[PHP] Réordonner un tableau [RESOLU] Développement d'un site Web ou d'une appli mobile 12 Mars 2010
[résolu] Utilsation des variables super_globales PHP Développement d'un site Web ou d'une appli mobile 1 Mars 2010
[résolu] Erreur 500 avec EasyPHP 5.3.0 et les URL rewriting URL Rewriting et .htaccess 10 Février 2010
[Résolu] Php condition avec test sur url Développement d'un site Web ou d'une appli mobile 14 Janvier 2010
[Résolu][PHP] session_start() Développement d'un site Web ou d'une appli mobile 12 Janvier 2010