Re: serialize/unserialize and 32/64 bit integers

Pierre Joye <[email protected]>
Newsgroups gmane.comp.php.windows
Message-ID <[email protected]>
hi James,

For the record: unlike the waste majority of unices, Windows x64
maximum integer in PHP (which uses the long C type ) is always 32bit,
signed (2^31 +/-).

Are you sure that you get s:10:"2600001234"? Using the latest 5.2 I
got: d:2600001234; (windows)

However, serialize is not supposed to be used to share data across
different hosts as the format can be architecture dependent. I would
suggest to use json instead, if your goal is to share data across
hosts.

Cheers,

On Mon, May 3, 2010 at 10:56 PM, James Crow <[email protected]> wrote:
> Hello,
>
>  I am having a problem with unserializing integers with Windows XP/PHP
> 5.2.11. The serialization takes place on a Linux x86_64 host. The values
> then gets passed to the Windows machine that is 32 bit. I think the problem
> is 32/64 bit related. If I serialize a number say 2600001234 on 32 bit
> Windows it becomes s:10:"2600001234". If I do the same from 64 bit Linux it
> becomes i:2600001234.
>  Is there a way to force it to serialize as a string on 64 bit PHP? If it
> matters this is an index of an array.
>
> Thanks,
> James
>
>
> --
> PHP Windows Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
>
>



-- 
Pierre

@pierrejoye | http://blog.thepimp.net | http://www.libgd.org

-- 
PHP Windows Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.