<?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>4's symfony blog &#187; action</title>
	<atom:link href="http://www.foolbirds.com/t/action/feed" rel="self" type="application/rss+xml" />
	<link>http://www.foolbirds.com</link>
	<description>all about symfony</description>
	<lastBuildDate>Fri, 14 Oct 2011 12:36:02 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>使用helper加快视图开发</title>
		<link>http://www.foolbirds.com/use-helpers.html</link>
		<comments>http://www.foolbirds.com/use-helpers.html#comments</comments>
		<pubDate>Mon, 22 Dec 2008 08:21:31 +0000</pubDate>
		<dc:creator>maker</dc:creator>
				<category><![CDATA[symfony]]></category>
		<category><![CDATA[action]]></category>
		<category><![CDATA[helper]]></category>

		<guid isPermaLink="false">http://symfony.bobhero.net/?p=191</guid>
		<description><![CDATA[在视图中， 我们可以使用Helpers来加快开发进度。
我们看一个简单的例子：
&#60;?php echo input_tag('title);?&#62;
上面的代码会生成下面的html代码
&#60;input id="title" name="title" type="text" /&#62;
在视图中，一些Helpers不会被自动载入， 需要使用use_helper()进行声明， 我们可以这样用：
use_helper('Text');
use_helper('JavaScript');
或者象下面这样可以达到和上面一样的效果：
use_helper('Text', 'JavaScript');
在symfony中，Helpers按照用途分组， 比如Text, Tag, Url等Helpers内都包含相关的辅助函数。Helpers被存放在源码的/lib/helper/目录下。
目前symfony1.2支持的Helper有：

Asset 用来声称html 的 head 中的内容
Tag 标签辅助函数，用来生成html标签
Url 链接和url相关函数
Helper 用来载入Helper（use_helper()本身就是一个helper）
Partial 用来调用局部模板的Helper
Cache 缓存Helper
Form 表单相关的Helper
I18N 多语言相关
Number
Date
DateForm
Escaping
Object
ObjectAdmin
Text
Validaton

在视图中Helper, Tag, Url, Asset是不用被声明的， 视图必须使用这些基本函数才能正常工作，在默认设置中Partial，Cache，Form也是不需要声明的，该设置取决于apps/app/config/settings.yml中的standard_helpers选项。默认的standard_helpers选项如下：
standard_helpers: [Partial, Cache, Form]
我们可以在该选项中加入更多的自动加载的Helper， 或者如果你觉得你不会用到模板缓存，你可以将Cache从该选项中去掉， 这有助于加快程序运行速度。
在模板之外使用Helper
有些时候，我们不只要在视图中使用Helpers，比如我们要在action中生成一个内部链接，我们可以用下面的方法：
//symfony 1.0 &#38; symfony 1.1
sfLoader::loadHelpers('Url');
$url = url_for('shop/search');
//symfony1.2
$this-&#62;getContext()-&#62;getConfiguration()-&#62;loadHelpers('Url');
$url = url_for('shop/search');
随机日志关于数据查询的使用Form表单的新建、修改python3 判断 变量类型跳并快乐着－symfony跳转指南FreeBSD7.10通过ports安装lamp后台generator的文本框的长度的设置 symfony命令行详解symfony cheat sheetUbuntu apt-get方法安装phpmyadmin使用symfony routing.yml 修改URL]]></description>
			<content:encoded><![CDATA[<p>在视图中， 我们可以使用Helpers来加快开发进度。</p>
<p>我们看一个简单的例子：</p>
<pre name="code" class="php">&lt;?php echo input_tag('title);?&gt;</pre>
<p>上面的代码会生成下面的html代码</p>
<pre name="code" class="html">&lt;input id="title" name="title" type="text" /&gt;</pre>
<p>在视图中，一些Helpers不会被自动载入， 需要使用use_helper()进行声明， 我们可以这样用：</p>
<pre name="code" class="html">use_helper('Text');
use_helper('JavaScript');</pre>
<p>或者象下面这样可以达到和上面一样的效果：</p>
<pre name="code" class="html">use_helper('Text', 'JavaScript');</pre>
<p>在symfony中，Helpers按照用途分组， 比如Text, Tag, Url等Helpers内都包含相关的辅助函数。Helpers被存放在源码的/lib/helper/目录下。</p>
<p>目前symfony1.2支持的Helper有：</p>
<ul>
<li><a title="查看Asset的官方api" href="http://www.symfony-project.org/api/1_2/AssetHelper" target="_blank">Asset</a> 用来声称html 的 head 中的内容</li>
<li><a title="查看Tag的官方api" href="http://www.symfony-project.org/api/1_2/TagHelper" target="_blank">Tag</a> 标签辅助函数，用来生成html标签</li>
<li><a title="查看Url的官方api" href="http://www.symfony-project.org/api/1_2/UrlHelper" target="_blank">Url</a> 链接和url相关函数</li>
<li><a title="查看Helper的官方api" href="http://www.symfony-project.org/api/1_2/HelperHelper" target="_blank">Helper</a> 用来载入Helper（use_helper()本身就是一个helper）</li>
<li><a title="查看Partial的官方api" href="http://www.symfony-project.org/api/1_2/PartialHelper" target="_blank">Partial</a> 用来调用局部模板的Helper</li>
<li><a title="查看Cache的官方api" href="http://www.symfony-project.org/api/1_2/CacheHelper" target="_blank">Cache</a> 缓存Helper</li>
<li><a title="查看Form的官方api" href="http://www.symfony-project.org/api/1_2/FormHelper" target="_blank">Form</a> 表单相关的Helper</li>
<li><a title="查看I18N的官方api" href="http://www.symfony-project.org/api/1_2/I18NHelper" target="_blank">I18N</a> 多语言相关</li>
<li><a title="查看Number的官方api" href="http://www.symfony-project.org/api/1_2/NumberHelper" target="_blank">Number</a></li>
<li><a title="查看Date的官方api" href="http://www.symfony-project.org/api/1_2/DateHelper" target="_blank">Date</a></li>
<li><a title="查看DateForm的官方api" href="http://www.symfony-project.org/api/1_2/DateFormHelper" target="_blank">DateForm</a></li>
<li><a title="查看Escaping的官方api" href="http://www.symfony-project.org/api/1_2/EscapingHelper" target="_blank">Escaping</a></li>
<li><a title="查看Object的官方api" href="http://www.symfony-project.org/api/1_2/ObjectHelper" target="_blank">Object</a></li>
<li><a title="查看ObjectAdmin的官方api" href="http://www.symfony-project.org/api/1_2/ObjectAdmin" target="_blank">ObjectAdmin</a></li>
<li><a title="查看Text的官方api" href="http://www.symfony-project.org/api/1_2/TextHelper" target="_blank">Text</a></li>
<li><a title="查看Validaton的官方api" href="http://www.symfony-project.org/api/1_2/ValidatonHelper" target="_blank">Validaton</a></li>
</ul>
<p>在视图中Helper, Tag, Url, Asset是不用被声明的， 视图必须使用这些基本函数才能正常工作，在默认设置中Partial，Cache，Form也是不需要声明的，该设置取决于apps/app/config/settings.yml中的standard_helpers选项。默认的standard_helpers选项如下：</p>
<pre name="code" class="php">standard_helpers: [Partial, Cache, Form]</pre>
<p>我们可以在该选项中加入更多的自动加载的Helper， 或者如果你觉得你不会用到模板缓存，你可以将Cache从该选项中去掉， 这有助于加快程序运行速度。</p>
<p><strong>在模板之外使用Helper</strong></p>
<p>有些时候，我们不只要在视图中使用Helpers，比如我们要在action中生成一个内部链接，我们可以用下面的方法：</p>
<pre name="code" class="php">//symfony 1.0 &amp; symfony 1.1
sfLoader::loadHelpers('Url');
$url = url_for('shop/search');</pre>
<pre name="code" class="php">//symfony1.2
$this-&gt;getContext()-&gt;getConfiguration()-&gt;loadHelpers('Url');
$url = url_for('shop/search');</pre>
<h3  class="related_post_title">随机日志</h3><ul class="related_post"><li><a href="http://www.foolbirds.com/add-table-prefix-in-symfony.html" title="Add table prefix  in symfony－在symfony中使用表前缀">Add table prefix  in symfony－在symfony中使用表前缀</a></li><li><a href="http://www.foolbirds.com/awesome_dual_screen.html" title="awesome 的 多头显示">awesome 的 多头显示</a></li><li><a href="http://www.foolbirds.com/%e4%bb%bfsymfony%e6%9c%ba%e5%88%b6%e5%ae%9e%e7%8e%b0%e4%b8%8d%e7%94%a8require%e6%88%96%e8%80%85include%e6%9d%a5%e5%ae%9e%e4%be%8b%e5%8c%96%e7%b1%bb.html" title="仿symfony机制实现不用require或者include来实例化类">仿symfony机制实现不用require或者include来实例化类</a></li><li><a href="http://www.foolbirds.com/use-orm-propel.html" title="关于数据查询的使用">关于数据查询的使用</a></li><li><a href="http://www.foolbirds.com/%e5%9c%a8layout%e4%b8%ad%e5%ba%94%e7%94%a8action%e5%ae%9a%e4%b9%89%e7%9a%84%e5%8f%98%e9%87%8f.html" title="在layout中应用action定义的变量">在layout中应用action定义的变量</a></li><li><a href="http://www.foolbirds.com/symfony-references-with-propel.html" title="symfony数据表关联详解(for propel)">symfony数据表关联详解(for propel)</a></li><li><a href="http://www.foolbirds.com/symfony-cheat-sheet.html" title="symfony cheat sheet">symfony cheat sheet</a></li><li><a href="http://www.foolbirds.com/vim%e9%85%8d%e5%90%88phpcs%e5%ae%9e%e7%8e%b0p%e8%87%aa%e5%8a%a8%e8%af%ad%e6%b3%95%e6%a3%80%e6%9f%a5.html" title="vim配合phpcs实现自动语法检查">vim配合phpcs实现自动语法检查</a></li><li><a href="http://www.foolbirds.com/add-tinymce-to-symfony-2.html" title="在symfony项目中应用TinyMCE（续）">在symfony项目中应用TinyMCE（续）</a></li><li><a href="http://www.foolbirds.com/symfony-form-offsetunset.html" title="Symfony中自定义form中offsetUnset的应用">Symfony中自定义form中offsetUnset的应用</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.foolbirds.com/use-helpers.html/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>

