2016-07-15 114 views
1

我正在使用cakePHP 2.4.4。我有一些常见的HTML/PHP代码必须多次显示,如:如何在cakephp中包含文件?

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

像这样有超过10个条件。我不想重复相同的HTML。我试图包含该文件。它适用于像include这样的路径(“D:/common/common.php”)。但我希望它在项目文件夹内。我把它放在元素中,但我无法多次加载它。如果我把它放在视图/ myview /那么我不能给出正确的路径。解决办法是什么?

+0

您是否制作不同的元素文件不同的条件是什么? –

+0

@ObjectManipulator OP写道:*** ...我正在使用cakePHP 2.4.4 ... ***也许我不能正确读取... – Poiz

+0

没有。我需要相同的元素为多个条件 – Shashikala

回答

2

我建议你创建不同的.ctp文件作为元素。

例如,对于element_one.ctp条件1,2,3 element_two.ctp为条件4,5,6 ..等等

检视/元应当具有element_one.ctp和element_two.ctp。

,然后在你的主视图页面,提到以下几点:

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

雅right.But我需要创建超过20个文件,其中10个文件具有相同的数据 – Shashikala

+0

嗯,不要“创建”具有相同数据的文件。如果10应该有相同的数据,那么也许你需要创建约14-15个文件。这太麻烦了,但可以完成。另一种方法是在视图中使用大量if/else if语句而不使用元素。 –

+0

我试过它的第一个作品。但页码超过一万行:(没有其他方式? – Shashikala