codeigniter
Как установить часовой пояс в CodeIgniter
Поиск…
Как установить часовой пояс в CodeIgniter
Размещение date_default_timezone_set('Asia/Kolkata');
на config.php
выше базового URL также работает.
Список поддерживаемых временных зон PHP
Приложение / config.php
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
date_default_timezone_set('Asia/Kolkata');
Другим способом, который я нашел полезным, является то, что вы хотите установить часовой пояс для каждого пользователя:
Создайте файл
MY_Controller.php
.Создайте столбец в своей
user
таблице, вы можете назвать его часовой пояс или любую вещь, которую хотите. Таким образом, когда пользователь выбирает свой часовой пояс, он может быть установлен на свой часовой пояс при входе в систему.
приложение / ядро / MY_Controller.php
<?php
class MY_Controller extends CI_Controller {
public function __construct() {
parent::__construct();
$this->set_timezone();
}
public function set_timezone() {
if ($this->session->userdata('user_id')) {
$this->db->select('timezone');
$this->db->from($this->db->dbprefix . 'user');
$this->db->where('user_id', $this->session->userdata('user_id'));
$query = $this->db->get();
if ($query->num_rows() > 0) {
date_default_timezone_set($query->row()->timezone);
} else {
return false;
}
}
}
}
Кроме того, чтобы получить список часовых поясов в PHP:
$timezones = DateTimeZone::listIdentifiers(DateTimeZone::ALL);
foreach ($timezones as $timezone) {
echo $timezone;
echo "<br />";
}
Другой способ установить часовую зону в кодеринговом
Чтобы установить часовой пояс в Codeigniter, добавив помощник даты, это альтернативный способ. Для этого необходимо следовать следующим двухэтапным действиям.
- Введите вспомогательную дату с помощью следующей функции:
if ( ! function_exists('now'))
{
/**
* Get "now" time
*
* Returns time() based on the timezone parameter or on the
* "time_reference" setting
*
* @param string
* @return int
*/
function now($timezone = NULL)
{
if (empty($timezone))
{
$timezone = config_item('time_reference');
}
if ($timezone === 'local' OR $timezone === date_default_timezone_get())
{
return time();
}
$datetime = new DateTime('now', new DateTimeZone($timezone));
sscanf($datetime->format('j-n-Y G:i:s'), '%d-%d-%d %d:%d:%d', $day, $month, $year, $hour, $minute, $second);
return mktime($hour, $minute, $second, $month, $day, $year);
}
}
- Теперь установите часовой пояс как значение
time_reference
config.php
например:$config['time_reference'] = 'Asia/Dhaka';
Все это настроено на использование часового пояса.
FYI: список списка часовых поясов добавляется в первом примере.