[PHP-users 28960] Re: 変数内で関数を実現するには
Mitsutoshi Nakamura
gmataw @ bitvalue.com
2006年 4月 9日 (日) 16:15:49 JST
中村@東京です。
Shusaku Kawaguchi wrote:
> データベースから取得した文字列、$Stringには以下のような文字列が
> 入っています。
>
> function MUL($FL) {
> if($FL == 5) {
> $RE = "<BR>";
> } else {
> $RE = "<BR><BR>";
> }
> return $RE;
> }
> $String = "あいうえお。MUL(5)";
> print $String;
>
> 期待する表示結果は「あいうえお。<BR>」ですが、
最初は、eval で何とかできるか?
と思いましたが以下で動くようです。
---
function MUL ($FL) {
$FL[1] == 5 ? $RE = '<BR>' : $RE = '<BR><BR>';
return $RE;
}
$String = 'あいうえお。MUL(6)';
echo preg_replace_callback("/MUL\(([^)]+)\)/", "MUL", $String);
---
PHP-users メーリングリストの案内