PHP date_default_timezone_set()

时间:2012-12-17 14:56:08

标签: php timezone

在php中,有没有办法在.htaccess或者任何地方设置默认时区,只要我不必在每个php页面设置它。

如果我无法访问服务器,只能访问PHP文件。提前致谢

更新

我正在使用apache(LAMP),并且无法访问php.ini

6 个答案:

答案 0 :(得分:11)

考虑到你从提到的事实中使用apache .htaccess:

是的,只要它运行mod_php就可以像.htaccess那样:

php_value date.timezone "Europe/Berlin"

或者你可以在php.ini中设置date.timezone,就像Karl Laurentius Roos建议的那样。只有通过访问php配置才能实现这一点。记得在改变php.ini后重启PHP(CGI模式)或你的webserver(mod_php)。

答案 1 :(得分:3)

在php.ini中设置date.timezone。支持的时区值:http://php.net/manual/en/timezones.php

答案 2 :(得分:2)

我使用代码

获得了500(内部服务器错误)

php_value date.timezone "Europe/Berlin"

然后我尝试了,SetEnv TZ Australia/Melbourne它就像一个魅力。

答案 3 :(得分:0)

如果您收到500错误,可以尝试检查PHP5模块,对我有用。

<IfModule mod_php5.c>
php_value date.timezone "Europe/Lisbon"
</IfModule>

答案 4 :(得分:0)

在CPanel Server的 .htaccess 文件中添加以下代码后。我以前得到500(内部服务器错误)

#Adjust default time zone 

<IfModule mod_php5.c>
    php_value date.timezone "Asia/Kolkata"
</IfModule>

SetEnv TZ Asia/Kolkata  

然后我导航到 cPanel MultiPHP INI编辑器(主页&gt;&gt;软件&gt;&gt; MultiPHP INI编辑器)&gt;&gt;编辑PHP INI设置

转到路径 /homecws/Your_folder_name/public_html/php.ini 然后 在 php.ini 文件

中加入date.timezone=Asia/Kolkata

这是完整的php.ini文件

; magic_quotes_gpc = Off;
; register_globals = Off;
; default_charset   = UTF-8;
; memory_limit = 64M;
; max_execution_time = 36000;
; upload_max_filesize = 999M;
; safe_mode = Off;
; mysql.connect_timeout = 20;
; session.auto_start = Off;
; session.use_only_cookies = On;
; session.use_cookies = On;
; session.use_trans_sid = Off;
; session.cookie_httponly = On;
; session.gc_maxlifetime = 3600;
; allow_url_fopen = on;
; ;display_errors = 1;
; ;error_reporting = E_ALL;



allow_url_fopen = On
allow_url_include = On
asp_tags = Off
display_errors = On
enable_dl = Off
file_uploads = On
max_execution_time = 300
max_input_time = 600
max_input_vars = 10000
memory_limit = 512M
session.gc_maxlifetime = 14400
session.save_path = "/var/cpanel/php/sessions/ea-php56"
upload_max_filesize = 2000M
post_max_size = 8M
zlib.output_compression = On
date.timezone = Asia/Kolkata

这解决了我的工作。

答案 5 :(得分:0)

如果服务器配置正确,并且您希望将进程时区设置为此服务器值(如果未设置),则可以在doc根.htaccess中将PHP文件设置为先运行其他PHP文件-在此文件中,您可以定义几个配置,函数和类,以用作“工具”,这些配置,函数和类将在所有其他PHP文件中可用-像这样:

.htaccess

php_value auto_prepend_file "path/of/file.php"


path / of / file.php

date_default_timezone_set(ini_get('date.timezone'));