ID: 36091
User updated by: oli at isnic dot is
Reported By: oli at isnic dot is
-Status: Feedback
+Status: Open
Bug Type: *General Issues
Operating System: FreeBSD 5.4
PHP Version: 4.4.2
New Comment:
Same result, I also tried with -n so that nothing was being
taken from the php.ini, and again it works fine when
compiled without the forementioned "fix"
# cat t.php
#!/usr/local/bin/php
<?php
$options = getopt("b:s");
var_dump($options);
?>
# ./t.php -s -b 1
array(0) {
}
Previous Comments:
------------------------------------------------------------------------
[2006-01-19 20:46:40] [EMAIL PROTECTED]
This works just fine for me:
test.php:
#!sapi/cli/php
<?php
$options = getopt("b:s");
var_dump($options);
?>
#./t.php -s -b 1
array(2) {
["s"]=>
bool(false)
["b"]=>
string(1) "1"
}
Works the same with both 5.1.2 and 4.4.2.
Try this same script please. (change the hashbang path, of course :)
------------------------------------------------------------------------
[2006-01-19 18:05:43] oli at isnic dot is
Description:
------------
The "fix" in bug #35594 breaks getopt() in PHP4 completely
on my system, it returns false on every call now.
FreeBSD 5.4-RELEASE-p8 and php-4.4.2 updated today.
Removing the "fix" makes getopt() work again.
Reproduce code:
---------------
$options = getopt("b:s");
if (!$options) {
print("\$options is false\n");
}
else {
foreach ($options as $key => $value) {
if ($value) {
print($key."=".$value."\n");
}
else {
print($key."=false\n");
}
}
}
exit(0);
Expected result:
----------------
#./getopt.php -s -b 1
s=false
b=1
Actual result:
--------------
#./getopt.php -s -b 1
$options is false
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=36091&edit=1