0

スクリプトの1つにこの行があり、非推奨のエラーがスローされます。

 eregi_replace( '\.([a-z]{3,4})$', "-{$width}x{$height}.\\1", $src );

誰かがこれを変換する方法をpreg_replace教えてくれ、将来の変更のために学ぶことができるように、なぜ、どのビットを変更する必要があるのか​​教えてもらえますか?私は自分で試してみましたが、このコードのビットがどこにあるかは、テストするのが本当に難しいことを意味します!!

eregi_replaceを純粋に置き換えるのと同じくらい簡単preg_replaceですか?

私は正規表現が嫌いです:)

4

1 に答える 1

3

i修飾子のような区切り文字が必要です:/

/\.([a-z]{3,4})$/i

それで:

preg_replace('/\.([a-z]{3,4})$/i', "-{$width}x{$height}.\\1", $src);

POSIX EREとPCREの違いについては、このマニュアルページを参照してください。

于 2010-08-21T12:25:54.147 に答える