1
我在我的PHP框架中使用XSLT作为模板引擎。我设置一些文本渲染脚本,该脚本将其转换为XML和传递到XSLTProcessor中:xslt国际化与PHP
<?php
class IndexController extends ActionAbstract {
public function doAuth() {
$this->_Renderer->some_text = 'Translatable text';
}
}
?>
视图看起来是这样的:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="xml"/>
<xsl:template match="/">
<html>
<head><title>Index.xsl</title></head>
<body>
Here is some text to be translated <br/>
<xsl:value-of select="root/some_text"/>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
所以,我有2种类型的文本中的观点:
- 动态(从ActionController的$设置好的这 - > _ Renderer-> SOME_TEXT = '翻译的文本')
- 硬编码在视图(这里要翻译一些文字d)
我可以使用xml字典来翻译xslt中的Harcoded文本(使用document()
函数),但是如何翻译从ActionController设置的文本?
什么是在我的意见翻译文本的最佳方式?
更新: 如果未找到翻译文本,是否可以打印默认值?
感谢
非常感谢!这很令人惊讶,但它有可能以某种方式减少输入量:)每次我必须写3行代码来输出一些单词 – Tomas 2012-02-04 12:23:18
那么,没有一个好的答案 - 你可以缩小它虽然有一行: xsl:call-template>':P –
2012-02-04 12:44:23
Thanks for你的帮助 :) – Tomas 2012-02-04 13:45:03