Bug #55706 [Opn->Fbk]: php.ini directives will lock once they are used in a host specific section
| From: | cmb@php.net | Date: | Tue, 03 Aug 2021 11:30:23 +0000 |
| Subject: | Bug #55706 [Opn->Fbk]: php.ini directives will lock once they are used in a host specific section | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-235547@lists.php.net to get a copy of this message | ||
Edit report at https://bugs.php.net/bug.php?id=55706&edit=1
ID: 55706
Updated by: cmb@php.net
Reported by: mehran20 at hotmail dot com
Summary: php.ini directives will lock once they are used in a
host specific section
-Status: Open
+Status: Feedback
Type: Bug
-Package: Dynamic loading
+Package: *Configuration Issues
Operating System: Windows XP SP3
PHP Version: 5.3.8
-Assigned To:
+Assigned To: cmb
Block user comment: N
Private report: N
New Comment:
I cannot reproduce the reported behavior with PHP-7.4. Can
anybody reproduce with any of the actively supported PHP
versions[1]?
[1] <https://www.php.net/supported-versions.php>
Previous Comments:
------------------------------------------------------------------------
[2011-09-16 08:39:21] mehran20 at hotmail dot com
Description:
------------
PHP version: 5.3.8-ZS5.5.0
ini_set function returns false if the given directive is named in a host specific
section. As the result, the directive's value is not changed. This bug is
reproducible with other similar functions like set_include_path.
Don't forget to restart your webserver before testing since this bug requires
modifying php.ini file.
Test script:
---------------
Insert the following section into your php.ini file:<br />
<br />
[Zend]<br />
include_path=".;C:\Program Files\Zend\ZendServer\share\ZendFramework\library"<br />
<br />
[HOST=anything.com]<br />
include_path=".;C:\my_library"<br />
<br />
<?php
echo "Executing: ini_set('include_path', 'C:\another_library')<br
/>\n";
$result = ini_set('include_path', 'C:\another_library');
echo 'ini_set returned: ' . ($result ? 'true' : 'false');
echo "<br />\n";
echo 'And current value for directive is: ' . ini_get('include_path');
Expected result:
----------------
Insert the following section into your php.ini file:<br />
<br />
[Zend]<br />
include_path=".;C:\Program Files\Zend\ZendServer\share\ZendFramework\library"<br
/>
<br />
[HOST=anything.com]<br />
include_path=".;C:\my_library"<br />
<br />
Executing: ini_set('include_path', 'C:\another_library')<br />
ini_set returned: true<br />
And current value for directive is: .;C:\another_library
Actual result:
--------------
Insert the following section into your php.ini file:<br />
<br />
[Zend]<br />
include_path=".;C:\Program Files\Zend\ZendServer\share\ZendFramework\library"<br
/>
<br />
[HOST=anything.com]<br />
include_path=".;C:\my_library"<br />
<br />
Executing: ini_set('include_path', 'C:\another_library')<br />
ini_set returned: false<br />
And current value for directive is: .;C:\my_library
------------------------------------------------------------------------
--
Edit this bug report at https://bugs.php.net/bug.php?id=55706&edit=1