2016-07-15 7 views
1

Ich benutze cakePHP 2.4.4. Ich habe einige gemeinsame HTML/PHP-Code, der mehrmals angezeigt werden muss:Wie Datei in Cakephp enthalten?

if(condition1){ 
    //show html 
}else if(condition2 && condition3){ 
    //show html 
} 

So gibt es mehr als 10 Zustand. Ich möchte nicht dasselbe HTML wiederholen. Ich habe versucht, die Datei einzuschließen. Es funktioniert für Pfad wie include ("D: /common/common.php"). Aber ich möchte, dass es im Projektordner ist. Ich stelle es in Element, aber ich kann es nicht mehrfach laden. Und wenn ich es in view/myview/dann stelle, kann ich keinen richtigen Pfad angeben. Was ist die Lösung?

+0

Haben Sie verschiedene Elementdateien für unterschiedliche Bedingungen geschaffen? –

+0

@ObjectManipulator OP schrieb: *** ... Ich benutze CakePHP 2.4.4 ... *** Vielleicht kann ich nicht richtig lesen ... – Poiz

+0

Nein. Ich brauche das gleiche Element für mehrere Bedingung – Shashikala

Antwort

2

Ich würde vorschlagen, dass Sie verschiedene .ctp-Dateien als Elemente erstellen.

Zum Beispiel element_one.ctp für Zustand 1, 2, 3. element_two.ctp für Zustand 4, 5, 6 .. usw.

Ansicht/Element sollte element_one.ctp und element_two.ctp haben.

Und dann, in der Hauptansichtsseite, erwähnen die folgenden:

if (condition1 || condition 2 || condition 3) { 

    echo $this->element("element_one"); 

} else if (condition 4 || condition 5 || condition 6) { 

    echo $this->element("element_two"); 
} 
+0

Ya right.But Ich muss mehr als 20 Dateien erstellen, in denen 10 Dateien die gleichen Daten haben. – Shashikala

+0

Nun, erstellen Sie keine Dateien mit gleichen Daten. Wenn 10 dieselben Daten haben soll, dann müssten Sie vielleicht 14-15 Dateien erstellen. Das ist zu viel Aufwand, aber es kann getan werden. Ein anderer Weg wäre, viele if/else if-Anweisungen in der Ansicht selbst zu verwenden, ohne Elemente zu verwenden. –

+0

Ich habe es versucht, zuerst funktioniert es. Aber die Seitenzahl überschreitet mehr als 10 tausend Zeile :(Keine andere Möglichkeit? – Shashikala

Verwandte Themen