Big_Endian problem

From: Date: Fri, 19 Jan 2018 21:04:02 +0000
Subject: Big_Endian problem
Groups: php.internals 
Request: Send a blank email to internals+get-101630@lists.php.net to get a copy of this message
Hi all, The test case ext/standard/tests/general_functions/bug72300.phpt is failed on s390x. The function "ignore_user_abort" returns "256" on s390x, and "1" on x86_64 after "ignore_user_abort" is set to true; The root reason is because of Big_Endian on s390x. Here is the C code: ext/standard/basic_functions.c b/ext/standard/basic_functions.c:5641 old_setting = (unsigned short)PG(ignore_user_abort); // php_core_globals.ignore_user_abort, "x /2b" shows its value : "0x01 0x00" on both platforms Does PHP interpreter support Big_Endian? Are there any existing macros/functions to deal with Big/Little Endian? Thanks, Sam Ding

« previous php.internals (#101630) next »