|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
[2008-05-08 11:08 UTC] thomas dot jarosch at intra2net dot com
Description:
------------
Hello together,
I'm seeing almost the same issue as #44564
after upgrading from PHP 5.2.5 to 5.2.6.
If I execute the provided test code via php CLI, everything works as
expected. Running the same code via mod_php inside Apache skips the
UTF-8 multi-byte characters.
I've looked at the ext/standard/exec.c code a bit and checked that
my "config.log" in both PHP build directories contains
"#define HAVE_MBLEN 1" so the call to php_mblen() should work.
Any idea what that could be?
One thing I noticed is that php_mblen() is a wrapper macro for
mblen() or mbrlen() which features a slight difference in the return
code (see -2 rc for details).
Thanks,
Thomas
Reproduce code:
---------------
var_dump(escapeshellarg('?'));
Expected result:
----------------
string(2) "'?'"
Actual result:
--------------
string(2) "''"
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
|
|||||||||||||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Fri Oct 24 18:00:01 2025 UTC |
Try with the code below (mandatory in the test): if (false == setlocale(LC_CTYPE, "UTF8", "en_US.UTF-8")) { die("skip setlocale() failed\n"); }