Richard Lynch wrote:
Steve Kaufman wrote:

Why does
         quotemeta("pat:1$WRW")
return
         pat:1
instead of
         pat:1\$WRW

What am I misunderstanding about quotemeta function?


You usually would use quotemeta on data coming from the database, or the
user, or externally, or, errr, basically things you haven't typed in to
PHP, that you need to pass into Regular Expressions.

In those cases, you've already got the $ (and other characters)
successfully embedded in the string, but you want to escape them for
whatever reason.

A better example code would be:
$string =
'period.backslash\\plus+star*question?lbracket[rbracket]carat^lparen(rparen)dollar$';
echo "<PRE>", quotemeta($string), "</PRE>";


Interesting aside... with the test string above, I noticed that backslash\\ only resolved to two backslashes. I thought there would be 4. It seems that quotemeta will resolve \ and \\ to \\, \\\ and \\\\ resolve to \\\\, etc.

--
Teach a man to fish...

NEW? | http://www.catb.org/~esr/faqs/smart-questions.html
STFA | http://marc.theaimsgroup.com/?l=php-general&w=2
STFM | http://www.php.net/manual/en/index.php
STFW | http://www.google.com/search?q=php
LAZY |
http://mycroft.mozdev.org/download.html?name=PHP&submitform=Find+search+plugins

Attachment: signature.asc
Description: OpenPGP digital signature



Reply via email to