2011-01-15 2 views
0

bien, j'ai une fonction dans un contrôleur appelé test, et je peux y accéder en allant à http://localhost/nwk/control/testLes segments URI de CodeIgniter capturés en tant que variables?

c'est ma fonction. Je veux utiliser les données données dans le prochain segment à partir du "test" en tant que variable php.

donc si je mets

function test() { $var = $this->uri->segment(3); echo $var; }

selon le mode d'emploi si je contrôle/test entrer/données, ma variable doit être égale à « données »?

ne semble pas fonctionner.

Ai-je oublié quelque chose ici?

Répondre

0

Pour une raison moi qui charge automatiquement la bibliothèque URI fait que toute cette fonctionnalité ne fonctionne pas.

Tout va bien maintenant. Merci tout le monde.

+0

C'est parce que vous n'avez pas besoin de charger vous-même la bibliothèque URI, elle est initialisée automatiquement. Je suis content que vous ayez compris ça :) – bassneck

1

Il vous manque l'opérateur d'affectation

function test() { $var = $this->uri->segment(3); echo $var; } 
+0

Je l'ai eu dans mon code, juste fait une faute de frappe: p mais merci – Zen

0
$config['name'] = $this->uri->segment(3, 0); 
echo $name; 
+0

Continue de me dire que $ name n'est pas affecté. Quand c'est clairement. Même si je mets simplement '$ name = $ this-> uri-> segment (3, 0), ça ne marche toujours pas. Retourne juste 0 – Zen

1

Vous pouvez simplement faire comme ceci:

function test($var, $another_var) 
{ 
    echo $var.' '.$another_var; 
} 

Et l'ouverture http://localhost/nwk/control/test/it/works serait echo "ça marche"

+0

juste jette des erreurs variables indéfinies. – Zen

+0

bassneck est juste. Il est préférable d'utiliser des arguments de fonction que les segments d'uri. Essayez son exemple plus attentivement. C'est correct. –

Questions connexes