php codeigniter 语言,php – codeigniter模板引擎,包括语言解析器

news/2024/12/2 13:03:45/

不幸的是,CI内置的模板解析器类没有此功能.你可以在

sparks directory中环顾四周,有多个火花集成了许多模板引擎,如smarty或twig,可以通过调整来创建这样的东西.

此外,您可以尝试扩展CI_Parser类来为您执行此操作,如下所示:

class MY_Parser extends CI_Parser {

const LANG_REPLACE_REGEXP = '!\{_\s*(?[^\}]+)\}!';

public $CI = null;

public function parse($template, $data, $return = FALSE) {

$this->CI = get_instance();

$template = $this->CI->load->view($template, $data, TRUE);

$template = $this->replace_lang_keys($template);

return $this->_parse($template, $data, $return);

}

protected function replace_lang_keys($template) {

return preg_replace_callback(self::LANG_REPLACE_REGEXP, array($this, 'replace_lang_key'), $template);

}

protected function replace_lang_key($key) {

return $this->CI->lang->line($key[1]);

}

}

这将使用$this-> lang-> line(‘password’)替换{_ password}之类的部分.可以针对您喜欢的版本调整模式.

将其置于application / libraries / MY_Parser.php和CI之下应该选择它,不需要更改控制器代码,如Extending Native Libraries部分所述.


http://www.ppmy.cn/news/614443.html

相关文章

windows下安装git

下载地址Download 2.18.0 for Windows安装验证安装结果 git --version转载于:https://www.cnblogs.com/tonghaolang/p/9253686.html

apppath php,App.php

## 引导文件定义> App.php执行应用文件位于thinkphp/library/think/App.php,调用init()初始化方法,具体内容如下:private static function init($module ){// 定位模块目录$module $module ? $module . DS : ;// 加载初始化文件if (is_…

多传感器融合理论

多传感器融合理论 多传感器信息融合(Multi-sensor Information Fusion,MSIF),就是利用计算机技术将来自多传感器或多源的信息和数据,在一定的准则下加以自动分析和综合,以完成所需要的决策和估计而进行的信息处理过程…

Hive metastore三种配置方式

Hive的meta数据支持以下三种存储方式,其中两种属于本地存储,一种为远端存储。远端存储比较适合生产环境。Hive官方wiki详细介绍了这三种方式,链接为:Hive Metastore。 一、本地derby 这种方式是最简单的存储方式,只需要…

Docker的Entrypoint和CMD的区别

Docker中的Entrypoint和Cmd都是用于指定容器启动时要运行的命令,它们的区别在于它们的作用和使用方式。 Entrypoint是指定容器启动时要执行的可执行文件或脚本,并且该命令在运行容器时不能被覆盖。Entrypoint可以看作是容器的默认执行命令,它…

PHP分布式链路追踪,SkyWalking:分布式架构链路追踪-SkyWalking介绍

前面几篇文章提到了微服务相关系统的使用与搭建,在微服务架构下的问题也比较突出。正常系统下我们的每个请求都会在同一个系统中进行输出。但是在微服务架构中一个请求可能设置一到多个服务进行处理。服务之间相互依赖,服务之间形成一个调用链。如果调用…

单目摄像头标定与测距

单目摄像头标定与测距 一、 标定 首先要对摄像头做标定,具体的公式推导在learning opencv中有详细的解释,这里顺带提一句,这本书虽然确实老,但有些理论、算法类的东西里面还是讲的很不错的,必要的时候可以去看看。1.单…

Java动态代理和静态代理区别

静态代理 package staticproxy;/*** 接口* author newtouch**/ public interface IHello {public void sayHello();public String doSomethong(String s);}package staticproxy;/*** 实现类* author newtouch**/ public class Hello implements IHello{Overridepublic void say…