From: php-bug-31247 at ryandesign dot com
Operating system: N/A
PHP version: 5.0.3
PHP Bug Type: Unknown/Other Function
Bug description: Warning: unpack(): Type H: outside of string
Description:
------------
I am experiencing the problem reported in bug 31247,
which was marked as bogus. The decision was that the
user's compiler was broken. I challenge this decision,
as I see the problem with the (php.net-endorsed)
precompiled Mac OS X version of PHP 5.0.3 (release 1)
from www.entropy.ch and also with PHP 4.3.10 installed
on a Gentoo server. I don't think all of these
compilers are broken. I don't see the problem with
Entropy PHP 4.3.9 (release 2) nor with 4.3.9 on a
different Gentoo server.
I wonder whether the problem really relates to the
break-statement-within-the-braces notation, because this
notation is already present in PHP 4.3.9 which does not
exhibit the problem. Regardless, I consider braces
around cases within a switch to be poor form, and
encourage developers I work with to not use it, as it
gives the false impression to the uninitiated (which is
often the person writing the code) that closing the
brace closes the case (which of course it doesn't; the
break actually does that).
Reproduce code:
---------------
php -r "print_r(unpack('H*hex', 'data'));"
Expected result:
----------------
Array
(
[hex] => 64617461
)
Actual result:
--------------
Warning: unpack(): Type H: outside of string in Command
line code on line 1
Array
(
[hex] => 64617461
)
--
Edit bug report at http://bugs.php.net/?id=31465&edit=1
--
Try a CVS snapshot (php4): http://bugs.php.net/fix.php?id=31465&r=trysnapshot4
Try a CVS snapshot (php5.0):
http://bugs.php.net/fix.php?id=31465&r=trysnapshot50
Try a CVS snapshot (php5.1):
http://bugs.php.net/fix.php?id=31465&r=trysnapshot51
Fixed in CVS: http://bugs.php.net/fix.php?id=31465&r=fixedcvs
Fixed in release: http://bugs.php.net/fix.php?id=31465&r=alreadyfixed
Need backtrace: http://bugs.php.net/fix.php?id=31465&r=needtrace
Need Reproduce Script: http://bugs.php.net/fix.php?id=31465&r=needscript
Try newer version: http://bugs.php.net/fix.php?id=31465&r=oldversion
Not developer issue: http://bugs.php.net/fix.php?id=31465&r=support
Expected behavior: http://bugs.php.net/fix.php?id=31465&r=notwrong
Not enough info:
http://bugs.php.net/fix.php?id=31465&r=notenoughinfo
Submitted twice:
http://bugs.php.net/fix.php?id=31465&r=submittedtwice
register_globals: http://bugs.php.net/fix.php?id=31465&r=globals
PHP 3 support discontinued: http://bugs.php.net/fix.php?id=31465&r=php3
Daylight Savings: http://bugs.php.net/fix.php?id=31465&r=dst
IIS Stability: http://bugs.php.net/fix.php?id=31465&r=isapi
Install GNU Sed: http://bugs.php.net/fix.php?id=31465&r=gnused
Floating point limitations: http://bugs.php.net/fix.php?id=31465&r=float
No Zend Extensions: http://bugs.php.net/fix.php?id=31465&r=nozend
MySQL Configuration Error: http://bugs.php.net/fix.php?id=31465&r=mysqlcfg