ホームページ >バックエンド開発 >PHPチュートリアル >yii如何获得某个模板的内容?
我想获得一个模板的内容, yii应该如何做?网上给的render好像不行,不知道哪里写错了。
我想获得一个模板的内容, yii应该如何做?网上给的render好像不行,不知道哪里写错了。
renderpartial试试
Render 的时候不要return或者echo 即可,就是直接赋值给一个变量
=======
看了楼主更新的歪解,我再更新下吧。
<code>php</code><code class="lang-php">$html = $this->render('index'); </code>
上面这段代码就能达到楼主的要求了,不过我看楼主又要
<code>json_encode($html); </code>
好吧,那么楼主你可能需要
<code>php</code><code class="lang-php">$this->renderAjax('index'); </code>
对不起各位,应该是我没有表达清楚。我还是说我自己的答案吧。
我就是想获得一个view模板的html代码,类似于thinkphp的fetch方法,然后将他付给一个变量,例如$content,再将它json_encode。但是无论是render还是renderpartial都不可以正确的执行我的想法。
下面给出我的方法
<code>$smarty = Yii::app()->smarty; $content = $smarty->fetch("page/builder.tpl"); json_encode($content); </code>
仔细看下render
和renderPartial
参数里面有个$return=false
,如下:
<code>public function renderPartial($view,$data=null,$return=false,$processOutput=false) { ..... } </code>
所以你可以这样:
<code>$returnHtml = $this->renderPartial('view', $datas, true); </code>