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 :

Tableau à plusieurs dimensions


Sujet :

Langage PHP

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

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 096
    Points : 944
    Points
    944
    Par défaut Tableau à plusieurs dimensions
    Bonjour,

    J'ai fait ce petit tableau pour un site deux langues.
    Il permet de faire la liaison entre la page espagnol et la page francaise.
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    $tab_url = array(
    	'gestion-de-patrimonios/' => 'gestion-de-patrimoine/',
    	'gestion-de-patrimonios/index.php' => 'gestion-de-patrimoine/index.php',
    	'gestion-de-patrimonios/ginebra.php' => 'gestion-de-patrimoine/geneve.php',
    	'gestion-de-patrimonios/servicio-selectivo.php' => 'gestion-de-patrimoine/service-selectif.php',
    	'gestion-de-patrimonios/filosofia.php' => 'gestion-de-patrimoine/phylosophie.php',
    	'gestion-de-patrimonios/contacto.php' => 'gestion-de-patrimoine/contact.php',
    	);
    J'affiche ensuite lpage corespondante avec un foreach
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    foreach($tab_url as $cle=>$valeur){
    	if($cle == $url) {
     
    	}elseif($valeur == $url) {
     
        } 
    }
    Sachant que $url est l'url sans la racine:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    http://www.monsite.ch/dossier/page.php => /dossier/page.php
    $url='/dossier/page.php';
    J'aimerais reprendre ce tableau mais pour 3 langues

    Es-ce possible de faire ainsi?
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    $tab_url = array(
    	'gestion-de-patrimonios/' => 'gestion-de-patrimoine/' => '3eme-labgues/,
     
    	);

    avec un foreach avec
    foreach($tab_url as $cle=>$valeur=>$valeur2){}

    Mercis
    Il ne suffit pas de tout savoir. Vouloir et persévérer, c'est déjà presque tout!

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    138
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 138
    Points : 123
    Points
    123
    Par défaut
    Salut,
    Je ne pense pas que tu utilises la méthode adéquate.
    Pour cela j'aurai créé un module du style langue.php et une petite classe :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
    //Initialise une session en demandant a l'utilisateur de choisir sa langue, tu peux forcer l'initialisation, ou tu peux utiliser des cookies c'est comme tu veux.
     
    class Langue{
      public function __construct(){
      }
      public function SelectionLangue($langue1, $langue2, $langue3){
        if(isset($_SESSION['langue'])){
          switch($_SESSION['langue']){
            case 'fr' : 
              return $langue1;
            //etc ....
        }
      }
    }
     
    //Ensuite en utilisant Langue::SelectionLangue('francais', 'french', 'autre'); tu récupères le paramètre qui convient à ta langue.
    Je n'ai jamais vu ce que tu essaies de faire et ca devient rapidement un gros casse tête pr la maintenance. Mon script tout pourri est juste la pr t'orienter vers une solution.

  3. #3
    jnore
    Invité(e)
    Par défaut
    Citation Envoyé par pierrot10 Voir le message

    Es-ce possible de faire ainsi?
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    $tab_url = array(
    	'gestion-de-patrimonios/' => 'gestion-de-patrimoine/' => '3eme-labgues/,
     
    	);

    avec un foreach avec
    foreach($tab_url as $cle=>$valeur=>$valeur2){}

    Mercis
    De cette façon tu n'y arriveras pas.

    Il te faut en fait un tableau multidimentionnel.
    Ex:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    $tab_url	=array
    			(
    			'gestion-de-patrimonios/'				=>array('url_1_fr/'	,'url_1_esp/','url_1_all/'),
    			'gestion-de-patrimonios/index.php/'		=>array('url_2_fr/'	,'url_2_esp/','purl_2_all/')
    			);
    Tu appelle ensuite ton tableau de la façon suivante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
     
    echo $tab['gestion-de-patrimonios/'][0];//POUR AVOIR LA PAGE FR
    echo $tab['gestion-de-patrimonios/'][1];//POUR AVOIR LA PAGE ESP
    echo $tab['gestion-de-patrimonios/'][2];//POUR AVOIR LA PAGE ALLEMANDE
    Tu n'a plus qu'à aménager pour ta boucle foreach.

Discussions similaires

  1. Initialisation d'un tableau à plusieurs dimensions
    Par kinouseb dans le forum Windows Forms
    Réponses: 2
    Dernier message: 07/02/2007, 13h16
  2. problème avec un tableau à plusieurs dimensions
    Par lelutin dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 07/09/2006, 12h05
  3. Réponses: 3
    Dernier message: 26/05/2006, 19h49
  4. Réponses: 7
    Dernier message: 19/01/2006, 18h57
  5. tableau à plusieurs dimensions
    Par pekka77 dans le forum C
    Réponses: 11
    Dernier message: 07/02/2005, 19h42

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