ホームページ  >  記事  >  CMS チュートリアル  >  Empire CMS 導入時の文字インターセプト時の HTML の問題を解決するカスタム関数を共有する

Empire CMS 導入時の文字インターセプト時の HTML の問題を解決するカスタム関数を共有する

silencement
silencement転載
2019-12-02 15:51:281898ブラウズ

Empire CMS 導入時の文字インターセプト時の HTML の問題を解決するカスタム関数を共有する

私の解決策は次のとおりです。関数を書いて追加しました。動作するか確認してみましょう。問題があれば、大丈夫だと思います。

まずは特に、e/ NoHTML() などのカスタム関数を class/connect.php ファイルに追加します。これは必要に応じて任意に設定できます。

コードは次のとおりです:

//去除HTML标记
function NoHTML($string){
$string = preg_replace("&#39;<script[^>]*?>.*?</script>&#39;si", "", $string);//去掉javascript
$string = preg_replace("&#39;<[\/\!]*?[^<>]*?>&#39;si", "", $string); //去掉HTML标记
$string = preg_replace("&#39;([\r\n])[\s]+&#39;", "", $string); //去掉空白字符
$string = preg_replace("&#39;&(quot|#34);&#39;i", "", $string); //替换HTML实体
$string = preg_replace("&#39;&(amp|#38);&#39;i", "", $string);
$string = preg_replace("&#39;&(lt|#60);&#39;i", "", $string);
$string = preg_replace("&#39;&(gt|#62);&#39;i", "", $string);
$string = preg_replace("&#39;&(nbsp|#160);&#39;i", "", $string);
return $string;
}

Empirecms チュートリアル

リスト コンテンツ テンプレートに移動してコードを変更します

コードは次のとおりです:

$r[smalltext]=esub(NoHTML($r[smalltext]),200,&#39;......&#39;);$listtemp=&#39;<li><strong><a href="[!--titleurl--]">
[!--title--]</a></strong><p>[!--smalltext--]</p></li>&#39;;

問題は解決しました。非常に簡単です。
中国語なので、英語の Web サイトの場合、Web サイト名にタイトルを使用する必要があるため、このように変更すると非常に便利です

以上がEmpire CMS 導入時の文字インターセプト時の HTML の問題を解決するカスタム関数を共有するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はwww.word666.com/cmsで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。