что использование FALSE в выборе запроса при использовании DATE FORMAT в codeigniter

Я хочу знать причину ниже кода

$this->db->select("DATE_FORMAT(`current_date`, '%M-%d-%Y' ) as date_human", FALSE); 

Когда я использую приведенный выше код, он возвращает результат July-09-2015 Теперь я хочу знать, что такое использование FALSE Потому что я получаю тот же результат, когда не добавляю FALSE.

Я упомянул [LINK] ( формат даты с воспламенителем codeigniter ). В этом, эксперт говорит, что это остановит CI от попыток автоматической защиты этих имен.

Изменить: когда я использую $this->db->last_query , запрос, который я получаю, это:

  SELECT *, DATE_FORMAT(current_date, '%M-%d-%Y' ) as date_human FROM `user_data` WHERE id = '57' 

при использовании как FALSE, так и без FALSE.

Я хочу знать разницу, а также использовать FALSE. Направьте меня, чтобы продолжить.

Когда вы используете $this->db->select() CodeIgniter автоматически защищает ваши имена столбцов.
Если вы установите значение FALSE , CodeIgniter не будет пытаться защитить ваши имена полей или таблиц с помощью backticks .

Это полезно, если вам нужен составной оператор select.

пример

 $this->db->select('(SELECT SUM(payments.amount) FROM payments WHERE payments.invoice_id=4') AS amount_paid', FALSE); $query = $this->db->get('mytable'); 

Чтение CodeIgniter active_record.html#select

$this->db->select() принимает необязательный второй параметр. Если вы установите значение FALSE , CodeIgniter не будет пытаться защитить ваши имена полей или таблиц. Это полезно, если вам нужен составной оператор выбора, где автоматическое экранирование полей может их нарушить.

например

  $this->db->select('(SELECT SUM(payments.amount) FROM payments WHERE payments.invoice_id=4) AS amount_paid', FALSE); $query = $this->db->get('mytable'); 

См. http://www.codeigniter.com/user_guide/database/query_builder.html.