如何使用PHP函数编辑PHP .ini值


How to edit php.ini values using PHP functions?

我目前使用在线服务器,我需要启用cURL模块(更改;extension=php_curl.dll到php.ini文件中的extension=php_curl.dll)。但是这个文件不能被在线服务器访问和编辑。如何使用PHP函数解决这个问题?

你可能想看看ini_set

PHP文档链接:http://www.php.net/manual/en/function.ini-set.php

string ini_set ( string $varname , string $newvalue )

设置给定配置选项的值。配置选项将在脚本执行期间保留这个新值,并且将在脚本结束时恢复。

而且,正如他们在文档中所说的:

不是所有可用的选项都可以使用ini_set()更改。在附录中有一个所有可用选项的列表。

作者想要动态ini_set()指令的真正原因是访问共享主机环境中的静态编译库(curl)。这在必须静态编译为PHP的库的情况下是不可能的。这些答案对问题的标题是有效的,但对描述是无效的,因为在这些限制条件下,他试图实现的目标似乎是不可能的。

但是,您可以使用dl()函数在运行时动态加载模块(如果它们不是静态的)http://de1.php.net/manual/en/function.dl.php.

但是,curl需要被静态编译成PHP…

要使用PHP的cURL支持,你必须编译PHP——with-curl[=DIR]其中DIR是包含lib和包括目录。在include目录中应该有一个文件夹命名为curl,其中应该包含easy.h和curl.h文件。在那里应该是一个名为libcurl的文件。A位于lib目录中。从PHP 4.3.0开始,您可以将PHP配置为使用cURL作为URL流——带卷纸。这个特性在PHP中被移到了PECL发送的。

如果您只需要发出HTTP请求,请尝试file_get_contents (http://php.net/manual/en/function.file-get-contents.php),在实践中您很少需要curl

可以使用php的ini_set();

一个例子::

ini_set("memory_limit","1000M");