1

で複数の正規表現ステートメントを使用しpreg_replaceていますが、それらが個別に機能することがわかりました。複数のpreg_replaceを含めると、別のpreg_replaceが機能しなくなります。

preg_replaceロードするとすぐにではなく、順序付けられた方法で使用する方法はありますか?

これが私がこれまでに持っているものです:

file_put_contents("$uploadedfile", preg_replace("/<[^>]*>/", "", "$filecontents"));         

file_put_contents("$uploadedfile", preg_replace('/\(?([0-9]{3})\)?[-. ]?([0-9]{3})[-. ]?([0-9]{4})/', '<em>(\1) \2-\3</em>', $filecontents));
4

1 に答える 1

1

2番目に使用しているファイルコンテンツは古いものだからです。ファイルから新しいコンテンツをフェッチしていないため、最初のステートメントの効果は表示されません。

これを試して

file_put_contents("$uploadedfile", preg_replace("/<[^>]*>/", "", "$filecontents"));  

$filecontents = file_get_contents($uploadedfile);       

file_put_contents("$uploadedfile", preg_replace('/\(?([0-9]{3})\)?[-. ]?([0-9]{3})[-. ]?([0-9]{4})/', '<em>(\1) \2-\3</em>', $filecontents));

また

すべてを1つの一時変数に保存し、最後にファイルに書き込みます

于 2013-02-10T13:30:06.503 に答える