php如何设置印度标准时间?

How to set Indian standard time in php?

我正在使用 PHP codeigniter,所以在这里我想获取当前的国家时间。 我在 sql 代码中尝试了 NOW(),但是当服务器更改位置时,服务器时间也会更改。如果我给 date() 我想这将占用我们的系统当前时间。在 date() 情况下,如果某些用户的日期时间有误,那么它将存储该错误时间。那么我该如何解决这个问题。

在 php 代码的开头将默认时区设置为印度

date_default_timezone_set('Asia/Kolkata');

查询

 $query = "INSERT INTO oc_customer SET date_added = ' ".date("Y-m-d H:i:s") ." ' "; 

在您的项目中 index.php 只需将以下代码放在第 2 行

date_default_timezone_set('Asia/Kolkata');

或在此处检查时区

http://php.net/manual/en/timezones.asia.php

将此 date_default_timezone_set('Asia/Kolkata'); 放在 config/config.php 中,它将适用于整个应用程序

将此行添加到应用程序文件夹中的 autoload.php:

$autoload['time_zone'] = date_default_timezone_set('Asia/Kolkata');

在 codeigniter 文件夹

的主 index.php 中添加这一行
date_default_timezone_set('Asia/Kolkata');

清晰度不高,

date_default_timezone_set对sql没有任何影响NOW().

此外,服务器 date/time 不依赖于用户的系统,除非您在 javascript 中获取它。

这是时区列表 PHP 提供,所以最终 codeigniter 会 PHP Timezones

这是您可以在 CI 中列出时区并可以进一步使用的方法。

$timezones =  DateTimeZone::listIdentifiers(DateTimeZone::ALL);

 foreach ($timezones as $timezone) 
 {
    echo $timezone;
    echo "</br>";
 }

也许通过研究我发现方法是保存在 config.php 文件中。

<?php

defined('BASEPATH') OR exit('No direct script access allowed');

date_default_timezone_set('Asia/Kolkata');