Doc #76245 [Opn->Csd]: mb_ereg_match matches at beginning of subject only

[email protected] Thu, 11 Nov 2021 10:59:43 +0000
Newsgroups php.doc.bugs
Message-ID <[email protected]>
Edit report at https://bugs.php.net/bug.php?id=76245&edit=1

 ID:                 76245
 Updated by:         [email protected]
 Reported by:        jake at qzdesign dot co dot uk
 Summary:            mb_ereg_match matches at beginning of subject only
-Status:             Open
+Status:             Closed
 Type:               Documentation Problem
 Package:            mbstring related
 Operating System:   Windows 7 32-bit
 PHP Version:        7.1.16
 Block user comment: N
 Private report:     N

 New Comment:

Automatic comment on behalf of cmb69
Revision: https://github.com/php/doc-en/commit/7fcb23ea98c75f40553bfcee73b782e62f4e72b4
Log: Fix #76245: mb_ereg_match matches at beginning of subject only


Previous Comments:
------------------------------------------------------------------------
[2018-04-20 19:25:21] jake at qzdesign dot co dot uk

Description:
------------
The manual page for `mb_ereg_match` at https://secure.php.net/manual/en/function.mb-ereg-match.php makes no mention that `$pattern` is only matched at the beginning of `$string` (i.e. it includes an implied `^` at the start).

It is mentioned in a user contributed note, but this behaviour really should be included in the main documentation, probably in a highlighted "Note" or "Warning" box, as it is very important for using the function, and the behaviour would be unexpected as most other similar functions in both PHP and other languages do not behave this way.

(It may be a bug in the function and it is not supposed to behave this way, but for compatibility reasons it probably can't be fixed until a major release.)

Test script:
---------------
<?php

// note space at start of $string parameter
echo mb_ereg_match('[[:alpha:]]', ' a') ? 'matched' : 'not matched';


Expected result:
----------------
Based on the documentation as it is, I expected "matched" to be output.

I expect to be able to easily determine what this simple script would output from the documantation.

Actual result:
--------------
"not matched" is output, but the documentation makes no indication that this would be the case.


------------------------------------------------------------------------



--
Edit this bug report at https://bugs.php.net/bug.php?id=76245&edit=1