<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>技術的なメモ書き &#187; Curry</title>
	<atom:link href="https://blog.sog-office.jp/?cat=7&#038;feed=rss2" rel="self" type="application/rss+xml" />
	<link>https://blog.sog-office.jp</link>
	<description>Just another WordPress site</description>
	<lastBuildDate>Sun, 21 Mar 2021 08:49:54 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=4.2.2</generator>
	<item>
		<title>PHPフレームワーク Curry で、テンプレートをレンダリングして変数で受け取りたい</title>
		<link>https://blog.sog-office.jp/?p=68</link>
		<comments>https://blog.sog-office.jp/?p=68#comments</comments>
		<pubDate>Sun, 05 Jul 2015 16:03:04 +0000</pubDate>
		<dc:creator><![CDATA[中の人]]></dc:creator>
				<category><![CDATA[Curry]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://blog.sog-office.jp/?p=68</guid>
		<description><![CDATA[お手軽なフレームワークを求めて Curry というPHPフレームワークを見つけたので使ってみた。 配布元：ht [&#8230;]]]></description>
				<content:encoded><![CDATA[<p>お手軽なフレームワークを求めて Curry というPHPフレームワークを見つけたので使ってみた。</p>
<p><a href="http://www.curryfw.net" target="_blank"><em>配布元：http://www.curryfw.net</em></a></p>
<p>&nbsp;</p>
<p>そんで、ちょっとしたサイトを構築してみたんだけど、</p>
<p>テンプレートをレンダリングして変数で受け取りたいのに、マニュアルにその記述がない。</p>
<p>&nbsp;</p>
<p>zendだったら</p><pre class="crayon-plain-tag">$string = $this-&gt;render("action");</pre><p>こんなかんじの処理ね。</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>viewクラス追っかけてって、なんとかしてみたのでメモっとく。</p>
<p>&nbsp;</p>
<p></p><pre class="crayon-plain-tag">$view = $this-&gt;view;
$view-&gt;enableLayout(false);
$view-&gt;setTemplate("template2");
$result = $view-&gt;getRendered();
$view-&gt;enableLayout(true);
$view-&gt;setTemplate($this-&gt;request-&gt;getAction());</pre><p></p>
<p>と、こんな感じ。</p>
<p>&nbsp;</p>
<p>2行目：レイアウトを無効化<br />
レイアウト不要なレンダリングの場合はfalseにします。</p>
<p>3行目：テンプレート名（アクション名）をセット<br />
zendの様にrenderメソッドの引数として渡せないため、このメソッドを利用します。</p>
<p>4行目：レンダリング結果取得<br />
ちなみに render() というメソッドもありますが、これを使うとブラウザに出力が掛かってしまうので使いません。</p>
<p>5,6行目：変更した2,3行目の設定を元に戻します。</p>
<p>&nbsp;</p>
<p>以上です。</p>
<p>公式にはリファレンスにはrender()メソッドしか載ってないんで、</p>
<p>getRendered() メソッドを使うのがポイントです。</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>シチュエーションとしては、メールの送信の本文を作ったりするのに使ってます。</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>https://blog.sog-office.jp/?feed=rss2&#038;p=68</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
