Closed
Description
Symfony version(s) affected: 4.3, 4.4
Description
When the PHP docref_root is set, comparsion (===) doesn't match anymore:
The docref_root set's an URL to a manual and prints it out for exceptions, like this -> in my example to https://secure.php.net/manual/en/:
preg_match() [<a href='https://secure.php.net/manual/en/function.preg-match.php'>function.preg-match.php</a>]: Compilation failed: regular expression is too large at offset 61332
Main problem is that the strpos doesn't return any results:
<?php
$mystring = "preg_match() [<a href='https://secure.php.net/manual/en/function.preg-match.php'>function.preg-match.php</a>]: Compilation failed: regular expression is too large at offset 61332";
$findme = 'preg_match(): Compilation failed: regular expression is too large';
$pos = strpos($mystring, $findme);
// Note our use of ===. Simply == would not work as expected
// because the position of 'a' was the 0th (first) character.
if ($pos === false) {
echo "The string '$findme' was not found in the string '$mystring'";
} else {
echo "The string '$findme' was found in the string '$mystring'";
echo " and exists at position $pos";
}
?>
The string 'preg_match(): Compilation failed: regular expression is too large' was not found in the string 'preg_match() [<a href='https://secure.php.net/manual/en/function.preg-match.php'>function.preg-match.php</a>]: Compilation failed: regular expression is too large at offset 61332'
How to reproduce
set docref_root to https://secure.php.net/manual/en/ in your php.ini/user.ini....
Possible Solution
unset docref_root to https://secure.php.net/manual/en/ in your php.ini/user.ini....