PHP文件信息扩展PHP.ini覆盖


PHP FileInfo Extension php.ini override

我正在我的应用程序上使用GD库,它要求我修改php.ini才能工作。我知道,如果取消对extension=fileinfo.so的注释,应用程序将按要求运行,但我面临的挑战是,我无法访问共享主机服务器配置。我的问题是,有没有办法使用ini_set('', '')

感谢

出于安全原因,共享主机已禁用ini_set((功能如果托管提供商为您打开ini_set((,您就可以完全访问php变量控制,而托管提供商不希望使用

出于您的目的,您可以通过应用程序根文件夹中的.htaccess文件进行访问

允许使用.htaccess 执行两个指令

php_flag <boolean-flag-name> on|off
php_value <flag-name> <flag-value>

php_flag应用于开/关值

例如,以下.htaccess文件将禁用全局变量,将最大文件上传大小设置为20MB,并允许PHP脚本运行10分钟(600秒(:

php_flag register_globals off
php_value upload_max_filesize 20M
php_value max_execution_time 600

您也可以使用ini_set函数。在php脚本中,它允许您在运行时更改应用程序中的设置。函数接受两个参数:

ini_set(标志名称、标志值(,

示例

<?php
ini_set('register_globals', 0);
ini_set('upload_max_filesize', '20M');
ini_set('max_execution_time', 600);
?>

我们可以在将这些值更改为查询之前查询php解释器,我们可以使用ini_get((方法

ini_get(标志名(返回配置值。我建议您检查配置更改并采取适当的措施。不要以为ini_get((总是有效的。

ini_get_all([扩展名](将所有配置值作为关联数组返回。可选的扩展参数返回特定于该扩展的选项,例如"allow_url_fopen"。

get_cfg_var(标志名(返回php.ini中的原始配置值(而不是.htaccess或ini_set中设置的任何重写(。

ini_restore(标志名(将配置选项返回到其原始值。