2017-06-13 10 views
-3

ここにPHPライブラリがあり、preg_replaceをpreg_replace_callbackに置き換えます。preg_replaceをpreg_replace_callbackに置き換えます。

これはラインです:

preg_replace("/=([0-9A-F][0-9A-F])/e", 'chr(hexdec("$1"))', $l) 

、これは私がやったことです:

preg_replace_callback("/=([0-9A-F][0-9A-F])/", function($m) { return chr(hexdec($m["$1"])); }, $line); 

しかし、それが働いていませんでした。私はまだpreg_replace_callbackがどのように動作するのか分かりません。私はまた、他の多くのスレッドに見えた:(

誰も私を助けてくださいすることができ

は事前にどうもありがとうございまし

+0

'$ mの'で[ "$ 1"] '$ Mは交換してください[1]'。 –

+0

あなたのしますprint_rを行いますr '$ m'配列をコールバック関数に追加します。構造が間違っていることがわかります。 '$ m [" $ 1 "]'はおそらく '$ m [1]'になるはずです –

答えて

0

あなたは$m配列の2番目の要素にアクセスするために$m[1]を使用する必要があります。!

preg_replace_callback("/=([0-9A-F][0-9A-F])/", function($m) { return 
    chr(hexdec($m[1])); }, $line 
); 

PHP demoを参照してください。

+0

あなたの答えはなぜ "コミュニティwiki"とマークされていますか?あなたはそれをやりました?または他の人をした?あまり問題がないかどうかを説明してください。 (私はちょうどコミュニティwikiのメタポストを読んだが、私は利益を見ない) – mickmackusa

+0

@mickmackusa:私はそのような貧しい質問に答えるためのポイントを取得したくない。私は愚か者を見つけようとしていたが、質問を終わらせ、時間がなかった。 –

関連する問題