Php 细枝扩展函数读取值
我试图创建一组简化的函数,让用户创建一个将作为表单呈现的细枝模板 表单在执行时应读取自生成的数据数组 下面的代码应该打印一个名为“hello”的字段,提交时(示例值为“world”)创建一个数组键hello,并显示值为“world”的绑定字段 模板示例:Php 细枝扩展函数读取值,php,twig,extension-methods,Php,Twig,Extension Methods,我试图创建一组简化的函数,让用户创建一个将作为表单呈现的细枝模板 表单在执行时应读取自生成的数据数组 下面的代码应该打印一个名为“hello”的字段,提交时(示例值为“world”)创建一个数组键hello,并显示值为“world”的绑定字段 模板示例: {{configkey('hello', 'Hello Field')}} 扩展函数 $func = new Twig_SimpleFunction('configkey', function ($key='example', $
{{configkey('hello', 'Hello Field')}}
扩展函数
$func = new Twig_SimpleFunction('configkey', function ($key='example', $label='label') {
echo '<div class="control-group">';
echo '<label class="control-label" for="' . $key . '">' . $label . '</label>';
echo '<div class="controls">';
echo '<input type="text" name="' . $key . '" value="{{config.' . $key . '}}"/>';
echo '</div>';
echo '</div>';
});
$func=new Twig\u SimpleFunction('configkey',function($key='example',$label='label')){
回声';
回显“.$label.”;
回声';
回声';
回声';
回声';
});
$this->_twigEnv->addFunction('configkey',$func)
输出
向所有人寻求帮助,但我发现解决方案比预期的要简单
$func = new Twig_SimpleFunction('configkey', function ($key='example', $label='label', $value='') {
echo '<div class="control-group">';
echo '<label class="control-label" for="' . $key . '">' . $label . '</label>';
echo '<div class="controls">';
echo '<input type="text" name="' . $key . '" value="' . $value . '"/>';
echo '</div>';
echo '</div>';
});
您是否有更好的方法仅使用键参数进行绑定?twig函数不应回显结果,它必须返回resultin而不是回显嵌入在twig文件中的html,这样您就可以正确打印配置数组值。您是独立使用Twig组件还是在框架内使用?我可以建议您基于symfony2框架的实现。让我know@kmlnvm我试图短暂地返回一个字符串,但函数输出一个原始html。我在一个zf1应用程序中,使用自定义zend视图依赖于twig,并使用twig loader的自定义实现从S3中提取模板。
{{configkey('hello', 'Hello Field', config.hello)}}