|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
[2001-05-24 08:38 UTC] bilo at mit dot it
I was using preg_replace with the '/F' parameter, and it
was working perfectly till v4.0.4pl1. Now it has been
substituted by preg_replace_callback.
Does preg_replace_callback work with class method as a callback function, too? If it does, how should it be
written?
I'm asking this because in each of these cases:
preg_replace_callback(/{([A-Z_][A-Z0-9_]*)}/i', $this->callmeback, $text);
preg_replace_callback(/{([A-Z_][A-Z0-9_]*)}/i', "\$this->callmeback", $text);
preg_replace_callback(/{([A-Z_][A-Z0-9_]*)}/i', '$this->callmeback', $text);
I get a warning:
preg_replace_callback() requires argument 2, [...],
to be a valid callback
More: there is another drawback. With preg_replace + '/F' parameter I could also specify additional parameters in the command line. Now I can't.
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
|
|||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Fri Oct 24 14:00:01 2025 UTC |
Method callbacks are performed with the syntax array( $object, 'method'); in your case you want to write preg_replace_callback( '/{([A-Z_][A-Z0-9_]*)}/i', array( &$this, 'callmeback');, $text); Btw, you missed the ' after callback( ... - Markus