zef*_*zef 2 mysql date zend-date
在数据库表“项目”中,我有一列“日期”(类型日期)。在我的查询中,我想从包括此日期列在内的几列构建一个字符串,但我希望日期显示为月份名称并同时在字符串中本地化。因此,如果日期是 2014 年 1 月 1 日,我希望根据语言环境 fr 或 en 等在 mystring 中包含“Column1 Janvier 中的某些文本”或“Column1 Janvier 中的某些文本”。
这就是我的模型中的内容:
$select = $this->select()
->from('items', array(items.".*" , 'mystring'=>new Zend_Db_Expr('CONCAT('column1',
'month'=> new Zend_Db_Expr('date->get(Zend_Date::MONTH_NAME)'))
->where('somecondition = true');
Run Code Online (Sandbox Code Playgroud)
这给我带来了 SQL 语法错误。我知道 SQL 有 MONTHNAME 但它没有本地化并且只返回英语。
是否可以从 SQL 查询中的日期列中使用 Zend_Date 获取本地化的月份名称?
我不知道 Zend_Date,但从 MySql 5.0.25 开始,您可以将 lc_time_names 设置 为您的语言,以您的语言提供日和月名称。
SET lc_time_names = 'fr_FR'
Run Code Online (Sandbox Code Playgroud)