CodeIgniter遇到的坑

1.controllers文件夹中的controller文件首字母大写。不大写也能够,可是环境兼容性很差,举个例子,我开发环境在mac电脑上,文件名首字母小写,服务能够正常访问;可是在阿里云服务器(debian)环境中,文件名首字母小写,没法访问controller类中的方法,文件名改为首字母大写,就能够正常访问了。php

2.在controller中访问数据库,须要在构造函数中加载数据库函数语句前调用父类构造函数,若是在model中加载数据库,则直接写加载数据库语句就行。以下sql

public function __construct()
{
   parent::__construct();
   $this->load->database;
}

3.接口返回页面的语句数据库

$this->output->set_output('返回值')

4.获取时间戳json

我通常获取时间戳的方式是写一个公用方法,查询数据库时间。由于在php中我没有找到日期和字符串转换和格式化的灵活方法,因此在sql中处理格式化的问题。数组

public function getSysdate()
{
  $sql = "select DATE_FORMAT(NOW(),'%Y%m%d%H%i%s') sysdate ";
  $query = $this->db->query($sql);
  return $query->row()->sysdate;
}

5.获取参数服务器

因为ci框架自身设计的问题,推荐尽可能用post方式请求后台服务,参数格式为json格式。那么问题来了,如何获取参数,ci框架提供了input流,请看下面的代码例子框架

$jsonStr = $this->input->raw_input_stream; //获取参数 input流
$jsonObj = json_decode($jsonStr);          //再将json字符串转成数组对象
相关文章
相关标签/搜索