0

文字列に関して非常に奇妙で深刻な問題が発生しています...

何らかの理由で、文字列内の特定の文字がどの関数にも正しく渡されず、1 つの PHP ファイルでのみ渡されます (他のページでは問題なく動作します)。

2 日前には何かが機能していましたが、現在は問題があります。

たとえば、次のような文字列があります。

http://example.com/v/asd238

私はそれを次のように変更しようとしています:

http://example.com/first/second/v/asd238

だから私は前にこれを持っていました:

preg_replace('/http\:\/\/example\.com\/([v|u]*)\/([a-z0-9]*)/i', 'http://example.com/first/second/v/$1/$2');

しかし、何らかの理由で「:」と「。」make 関数は基本的に何もしません。strpos() や str_replace() のような関数でも。

なぜ、「\」で 2 つをエスケープしたとしても、どうなるのでしょうか。なぜ私がこの問題を抱えているのか、リモートでさえ理解できません。

4

1 に答える 1

1

これが最善の方法だと思います:

str_replace('http://example.com/', 'http://example.com/first/second/', $url);

詳しくはstr_replace()

于 2012-09-09T21:15:57.503 に答える