|  | Posted by Jochem Maas on 02/11/05 23:36 
Jason Barnett wrote:> 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
 
 thats correct...
 
 echo "\\"; // shows one backslash
 
 
 
 > 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
 >
  Navigation: [Reply to this message] |