#41588 [Opn->Csd]: preg_match offset is in bytes even in unicode mode

From: Date: Fri, 17 Aug 2007 03:00:47 +0000
Subject: #41588 [Opn->Csd]: preg_match offset is in bytes even in unicode mode
References: 1  Groups: php.doc 
Request: Send a blank email to phpdoc+get-969377501@lists.php.net to get a copy of this message
ID: 41588 Updated by: vrana@php.net Reported By: spam02 at pornel dot net -Status: Open +Status: Closed Bug Type: Documentation problem Operating System: * PHP Version: 6.0.0-dev (20070509) New Comment: This bug has been fixed in the documentation's XML sources. Since the online and downloadable versions of the documentation need some time to get updated, we would like to ask you to be a bit patient. Thank you for the report, and for helping us make our documentation better. $offset: "(in bytes)" Previous Comments: ------------------------------------------------------------------------ [2007-06-04 13:18:38] tony2001@php.net >preg_match() with 'u' modifier is supposed to use UTF-8, but this >switch doesn't affect offset parameter, which is always in bytes. Right, PHP is not supposed to parse the regexp to detect which modifiers were used. The byte/codepoint behaviour changes only in Unicode mode. ------------------------------------------------------------------------ [2007-06-04 13:08:02] spam02 at pornel dot net (fixed php version) ------------------------------------------------------------------------ [2007-06-04 13:04:43] spam02 at pornel dot net Description: ------------ preg_match() with 'u' modifier is supposed to use UTF-8, but this switch doesn't affect offset parameter, which is always in bytes. This gotcha at least deserves to be documented, although consistent unicode support would be even better. Reproduce code: --------------- <?php preg_match('/./u',urldecode('%C2%AE').'NY',$m,NULL,2); echo $m[0]; Expected result: ---------------- Y Actual result: -------------- N ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=41588&edit=1

« previous php.doc (#969377501) next »