Reply to Re: Different binary results with different PHP versions

Your name:

Reply:


Posted by Skeleton on 05/31/06 10:20

Yes, I have read the manual and notes below the manual. But actually, I
don't need exactly the decbin function. I have used that just to show
something going wrong. My point is the ^ operator. For ex, look at the
following code and its outputs:

echo (1 ^ -5817441119);
// Prints -1522473824 which is true result, at PHP 5.1.2 + Windows
// Prints -2147483647 which is false result, at PHP 4.4.2 + Linux

I also thought that the reason is that the number is too small, but why
PHP 5 calculates correctly? Is there a big difference in number types
between PHP 4 and PHP 5? I don't know if it helps but when I checked
PHP_INT_MAX, it is 2147483647 for both.

Erwin Moller wrote:
> Skeleton wrote:
>
> > I am using Windows XP + PHP 5.1.2 at home for development and using
> > Linux + PHP 4.4.2 at server side. In my code, I am doing some bitwise
> > operations. While doing this, I have come accross to different results
> > from my functions that uses bitwise xor (^) operator. When I digg into
> > the code, I have tried to print out the binary of a decimal number. The
> > result was so:
> >
> > echo decbin(-5817441119);
> > // Prints 10100101010000001110010010100001 at local (PHP 5.1.2)
> > // Prints 10000000000000000000000000000000 at server (PHP 4.4.2)
> >
> > Is this a bug? How can I workaround this problem? Thanks.
>
> Hi,
>
> Did you read the Fine Manual?
> http://nl2.php.net/manual/en/function.decbin.php
>
> says:
> string decbin ( int number )
> ----------------
> Returns a string containing a binary representation of the given number
> argument. The largest number that can be converted is 4294967295 in decimal
> resulting to a string of 32 1's.
> ----------------
>
> Your number is bigger, or actually smaller. ;-)
>
> Read the usercontributed notes for details and solutions.
>
> Regards,
> Erwin Moller

[Back to original message]


Удаленная работа для программистов  •  Как заработать на Google AdSense  •  England, UK  •  статьи на английском  •  PHP MySQL CMS Apache Oscommerce  •  Online Business Knowledge Base  •  DVD MP3 AVI MP4 players codecs conversion help
Home  •  Search  •  Site Map  •  Set as Homepage  •  Add to Favourites

Copyright © 2005-2006 Powered by Custom PHP Programming

Сайт изготовлен в Студии Валентина Петручека
изготовление и поддержка веб-сайтов, разработка программного обеспечения, поисковая оптимизация