Je travaille dans un projet php utilisant codeigniter. Veuillez m'indiquer quelle est la méthode globale pour définir le fuseau horaire pour php et mysql. Dans quel fichier je peux placer ceci. Je veux le définir sans php.ini et le fichier .htaccess.
je l'utilise actuellement avant chaque entrée -:
date_default_timezone_set("Asia/Kolkata");
$time = Date('Y-m-d h:i:s');
Placer cette date_default_timezone_set('Asia/Kolkata');
sur config.php au-dessus de l’URL de base fonctionne également
PHP Liste des fuseaux horaires pris en charge
application/config.php
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
date_default_timezone_set('Asia/Kolkata');
Si vous souhaitez définir un fuseau horaire pour chaque utilisateur, vous avez également défini une utilisation complète.
Créer un MY_Controller.php
créer une colonne dans votre table utilisateur, vous pouvez nommer le fuseau horaire ou tout ce que vous voulez. Ainsi, lorsque l’utilisateur sélectionne son fuseau horaire, il peut être réglé sur son fuseau horaire lors de la connexion.
application/core/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;
}
}
}
}
Aussi pour obtenir la liste des fuseaux horaires en php
$timezones = DateTimeZone::listIdentifiers(DateTimeZone::ALL);
foreach ($timezones as $timezone)
{
echo $timezone;
echo "</br>";
}
Ajoutez cette ligne dans le dossier principal index.php
Du codeigniter
date_default_timezone_set('Asia/Kolkata');
Si vous cherchez à configurer globalement le fuseau horaire dans l’ensemble du projet, vous pouvez le configurer CI application/config.php
fichier
$config['time_reference'] = 'Asia/Dubai';
Ajoutez cette ligne à autoload.php dans le dossier de l’application:
$autoload['time_zone'] = date_default_timezone_set('Asia/Kolkata');
Comme décrit ici
Ouvrez votre fichier php.ini
(Cherchez-le)
Ajoutez la ligne de code suivante en haut du fichier:
date.timezone = "US/Central"
Vérifiez les modifications en allant à phpinfo.php
ajoutez-le dans votre fichier index.php, et il fonctionnera partout sur votre site
if ( function_exists( 'date_default_timezone_set' ) ) {
date_default_timezone_set('Asia/Kolkata');
}
vous pouvez essayer ceci:
date_default_timezone_set('Asia/Kolkata');
Dans application/config.php OR application/autoload.php
Il y a comme ça:
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
date_default_timezone_set('Asia/Kolkata');
Cela fonctionne très bien pour moi, je pense que c'est la meilleure façon de définir DEFAULT TIMEZONE dans codeignitor.
Mettre dans config/config.php
, Cela fonctionnera pour toute l'application ou index.php
de codeigniter.
ajoutez-le à votre fichier project/index.php et il fonctionnera partout sur votre site. date_default_timezone_set ('Asia/kabul');
Ajoutez-le à votre fichier project/application/config/config.php et il fonctionnera partout sur votre site.
date_default_timezone_set('Asia/Kolkata');