如何使用CodeIgniter格式化日期 [英] How to format a date with CodeIgniter
问题描述
我想知道我在这里做错了什么。我想在我的查询中格式化 date_published
字段,我在我的IDE中得到 t_string语法错误
。
I'm trying to figure out what I'm doing wrong here. I'm wanting to format the date_published
field in my query and I'm getting a t_string syntax error
in my IDE.
$this->db->select('site_news_articles.article_title, site_news_articles.is_sticky,' date_format('site_news_articles.date_published, 'f jS, Y')');
UPDATE:
function getNewsTitles($category_id) {
$this->db->select('site_news_articles.article_title, site_news_articles.is_sticky');
$this->db->select("DATE_FORMAT(site_news_articles.date_published, '%M %e, %Y') as formatted_date", TRUE);
$this->db->from('site_news_articles');
$this->db->where('site_news_articles.news_category_id', $category_id);
$this->db->where('site_news_articles.is_approved', 'Yes');
$this->db->where('site_news_articles.status_id', 1);
$this->db->order_by('site_news_articles.date_published', 'desc');
$this->db->limit(10);
$query = $this->db->get();
return $query->result_array();
}
错误号码:1064
您的SQL语法有错误;请检查与您的MySQL服务器版本对应的手册,以获取在'FROM( site_news_articles
)WHERE site_news_articles
news_category_id
= 2 A'在第2行
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'FROM (site_news_articles
) WHERE site_news_articles
.news_category_id
= 2 A' at line 2
SELECT site_news_articles
。 article_title
, site_news_articles
。 is_sticky
,DATE_FORMAT
'%M
%e,%Y' site_news_articles
)WHERE site_news_articles
。 news_category_id
= 2 AND site_news_articles
。 is_approved
='Yes'AND site_news_articles
。 status_id
= 1 ORDER BY
site_news_articles
。 date_published
desc LIMIT 10
SELECT site_news_articles
.article_title
, site_news_articles
.is_sticky
, DATE_FORMAT(site_news_articles.date_published, '%M
%e, %Y')
as formatted_date FROM (site_news_articles
) WHERE site_news_articles
.news_category_id
= 2 AND site_news_articles
.is_approved
= 'Yes' AND site_news_articles
.status_id
= 1 ORDER BY site_news_articles
.date_published
desc LIMIT 10
文件名:/home/xtremer/public_html/models/sitemodel.php
Filename: /home/xtremer/public_html/models/sitemodel.php
行号:140
推荐答案
看起来您有语法错误。
$this->db->select("site_news_articles.article_title, site_news_articles.is_sticky, DATE_FORMAT(site_news_articles.date_published, '%M %D, %Y')", FALSE);
每当您在CI中构建查询时,都应使用双引号括起来,可以在查询中使用单引号,而无需转义它们。
Whenever you're building a query in CI, you should used double quotes to surround it, so you can use the single quotes in your query without having to escape them.
这篇关于如何使用CodeIgniter格式化日期的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!