ID: 5889
Updated by: [EMAIL PROTECTED]
Reported By: tomwk at audiogalaxy dot com
-Status: Analyzed
+Status: Wont fix
Bug Type: Feature/Change Request
Operating System: Redhat Linux
PHP Version: 4.0.1pl2
New Comment:
This will not be implemented.
Previous Comments:
------------------------------------------------------------------------
[2000-08-01 10:22:25] [EMAIL PROTECTED]
Well, functions args work differently in perl and PHP. Maybe we need
some "array" type of pack modifier, because PHP does not convert
function arguments to array. Though, you can write a wrapper function
using func_get_args() and func_num_args() for this.
------------------------------------------------------------------------
[2000-08-01 09:51:18] tomwk at audiogalaxy dot com
I have an application that writes data across our network
to another program. Most of the data consists of integer arrays. I'm
currently doing this in a very simple manner,
using something like this:
for( $i = 0; $i < $numInts; $i++ ) {
fwrite( $fd, pack( "N", $ints[ $i ] ) );
}
However, this results in a very large number of calls to
fwrite, which is bad for performance. I made the routine
about 3 times faster by doing something like this:
fwrite( $fd, pack( "N10"
$ints[ $i + 0 ],
$ints[ $i + 1 ],
$ints[ $i + 2 ], ///.. and so on,
However, it would be really great if pack could take an array as one of
it's arguments. I believe this is the way
Perl behaves, but when I try:
$data = array( 10, 123 );
$buf = pack( "N*", $data );
$valArray = unpack( "N*", $buf );
while( list( $key, $val ) = each( $valArray ) ) {
echo "$key -> $val\n";
}
the only output I get is:
1 -> 1
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=5889&edit=1