这个错误有什么问题?
问题描述:
我使用Zend的部分助手:这个错误有什么问题?
<?php echo $this->partial(include_once('../application/views/layouts/header.phtml'), array('from' => '<div id="logo_page"><img src="../css/images/master1.png"></div>')); ?>
在header.phtml:
<?php echo $this->escape($this->from) ?>
当我尝试使用它,我有错误:
exception 'Zend_View_Exception' with message 'script '1' not found in path (Y:/home/local.mekheda/application/modules/blog/views\scripts/;Y:\home\local.mekheda\application/views\scripts/)' in Y:\home\local.mekheda\library\Zend\View\Abstract.php:980
为什么它是1,什么是错的?
答
你不需要include_once
指令。只使用路径局部视图:
$this->partial('../application/views/layouts/header.phtml', array('from' => '<div id="logo_page"><img src="../css/images/master1.png"></div>'));
的include_once
返回1
上的成功,因此,错误消息。
更新:
不知道我完全理解这个问题,从您的意见,但为什么不把所有的HTML中的部分观点:
// header.phtml
<div id="logo_page"><img src="<?php echo $this->img; ?>" /></div>
它如下传递给局部视图:
$this->partial('../application/views/layouts/header.phtml', array('img' => 'css/images/master.pg'));
注:如果文件css/images/master.png
是你public
目录下你可以把它像我一样,不使用../
答
使用部分错误的 - 扔include_once
声明
echo $this->partial(
'../application/views/layouts/header.phtml',
array('from' => '<div id="logo_page"><img src="../css/images/master1.png"></div>'));
答
地方“header.phtml”在YourApplicationFolder /模块/应用/视图/谐音
< ?php echo $this->partial('partials/header.phtml',
array('from' => '<div id="logo_page"><img src="../css/images/master1.png"></div>')); ?>
请求脚本可能不包括父目录遍历(” ../ “,”..“符号) 我尝试了不同的方式,我有这个错误 – Stopper
是的,正确的。您应该将部分视图放置在您的视图所在的相同文件夹中。 [RTFM](http://framework.zend.com/manual/1.12/en/zend.view.helpers.html#zend.view.helpers.initial.partial)查看它是如何完成的。 ;-) – Havelock
如果我在不同的意见中需要它,该怎么办?我需要重复header.html吗? – Stopper