\0&l"/> \0&l">

ホームページ  >  記事  >  バックエンド開発  >  置換と Smarty に関するいくつかの小さな質問を解決します。

置換と Smarty に関するいくつかの小さな質問を解決します。

WBOY
WBOYオリジナル
2016-06-13 13:33:08822ブラウズ

置換とスマートに関するいくつかの質問を解決します
1 置換について
for ($i=0;$i<$res_length;$i++){
$res1 = $res[$i];
$ res1['content'] = preg_replace("/($selkey)/is","\0",$res1[' content' ]);
$res1['content'] = stristr($res1['content'],$selkey);
$res2[] = $res1;
/*echo "< pre> ";
print_r($res1);
echo "";
exit();*/

問題: この関数によって表示される内容は正常です。 $selkey の最初の出現からコンテンツの最後までの内容ですが、最初の $selkey が preg_replace スタイルによって変更されないのはなぜですか? そして、preg_replace関数とstristr関数の位置を入れ替えると、結果は再び正しいですか?

2 Smarty の truncate 関数について
上記のコードを truncate を使って処理した結果、preg_replace で修正したスタイルがすべて消えてしまい、ハイパーリンクを追加してみましたが、結果はうまくいきませんでした。この機能を削除すると、再び正常に動作します。何が起こっているのでしょうか? (smarty の truncate は中国語を十分にサポートしていないため、インターネットからダウンロードした修正済みの truncate を使用しています。これが原因でしょうか?もしそうなら、どのように解決しますか?)

-- --- -解決策------------------
str_ireplace() は要件を満たすことができます

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。