検索と置換については、

WBOY
リリース: 2016-06-13 12:18:41
オリジナル
839 人が閲覧しました

検索と置換については、専門家の指導をお願いします
$a=array("W1"=>"Discovery","W2"=>"Alien","W3"=>"California");
$str="中国{W1}、エイリアンを発見しましたが、米国の{W3}でも見つかりました";

出力: 中国はエイリアンを発見しましたが、それは{W3}でも見つかりました米国ではカリフォルニアでも
-----解決策のアイデア----------------------
を発見しました。

$a = array("W1"=>"发现","W2"=>"外星人","W3"=>"加州");<br />$str = "中国{W1},了一个{W2},但在美国的{W3}也发现了";<br /><br />//本来 php 提供的 strtr 函数可以轻松的完成此工作。但你蛇足了一对{},就不理想了<br />echo strtr($str, $a); //中国{发现},了一个{外星人},但在美国的{加州}也发现了<br /><br />//继续使用 strtr 函数的话,可以<br />foreach($a as $k=>$v) $b["{{$k}}"] = $v;<br />echo strtr($str, $b); //中国发现,了一个外星人,但在美国的加州也发现了<br /><br />//当然你也可以使用 str_replace 或 preg_replace 函数<br />foreach($a as $k=>$v) {<br />  $str = str_replace("{{$k}}", $v, $str);<br />}<br />echo $str; //中国发现,了一个外星人,但在美国的加州也发现了<br /><br />foreach($a as $k=>$v) {<br />  $str = preg_replace("/{{$k}}/", $v, $str);<br />}<br />echo $str; //中国发现,了一个外星人,但在美国的加州也发现了<br />
ログイン後にコピー

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート