ちょうどテンプレート文字列置換のための最良の方法が不思議です。 preg_replaceでPHPテンプレートの文字列を置き換える
preg_replace('/{%(\S+)%}/', 'bill', $tableOutput);
、文字列がたくさんあります場合は交換する必要があり、関数が何度も文字列の数に依存呼び出されます置き換えることが必要です。文字列を一度見て、それに応じて置き換える方法があるかどうか疑問に思うだけですか?
おかげ
ちょうどテンプレート文字列置換のための最良の方法が不思議です。 preg_replaceでPHPテンプレートの文字列を置き換える
preg_replace('/{%(\S+)%}/', 'bill', $tableOutput);
、文字列がたくさんあります場合は交換する必要があり、関数が何度も文字列の数に依存呼び出されます置き換えることが必要です。文字列を一度見て、それに応じて置き換える方法があるかどうか疑問に思うだけですか?
おかげ
preg_replace
の配列構文を使用して...?
preg_replace(array('/pattern1/', '/pattern2/'), array('replacement1', ...), ...)
しかし、あなたは実際に置換文字列を見つけることができ、置換と一致します。{%itemname%}、{%itemname%}を見つけ、配列['itemname']で一致するものを探して、値に置き換えますか? – Bruce
はい、lookaheadとlookbehindを使ってマッチを置き換えることができます。 '(?<=\
もっと簡単な方法は、 'preg_replace'の置換文字列で逆参照$ 1を使うだけです。 –
は、[この](http://stackoverflow.com/questions/8846225/php-function-that-replaces-texts-with-variables/8846257#8846257)あなたが何をしたいですか? – Jon
[PHPマニュアル](http://php.net/manual/en/function.preg-replace.php)によると、 'preg_replace'に配列引数を与えることができます。そう、いいえ。それは何度も呼び出されません。 – rdlowrey
あなたは私が求めている答えです。ありがとう非常にありがとう – Bruce