ホームページ > php教程 > PHP源码 > php 切割html字符串,自动加上未结束的html标签

php 切割html字符串,自动加上未结束的html标签

PHP中文网
リリース: 2016-05-25 17:09:25
オリジナル
1347 人が閲覧しました


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

/*截取html字符串

 * @param $s 字符串

 * @param $zi 长度

 * @param $ne 没有结束符的html标签

 */

function G_htmlcut($s,$zi,$ne=',br,hr,input,img,'){

    $s=preg_replace('/\s{2,}/',' ',$s);

    $os=preg_split('//',$s);

    preg_match_all('//',$s,$or);

    $s='';

    $tag=array();

    foreach($os as $k => $v){

        if($v!='' && $v!=' '){

            $l=strlen($v);

            for($i=0;$i 127){

                    $s.=$v[$i].$v[++$i].$v[++$i];

                }else{

                    $s.=$v[$i];

                }

                $zi--;

                if($zi < 1){

                    break 2;   

                }

            }

        }

        preg_match(&#39;/]+)[\s>]{1}/&#39;,$or[0][$k],$t);

        $s.=$or[0][$k];

        if(strpos($ne,&#39;,&#39;.strtolower($t[1]).&#39;,&#39;)===false && $t[1]!=&#39;&#39; && $t[1]!=&#39; &#39;){

            $k=array_search(&#39;&#39;,$tag);

            if($k!==false){

                unset($tag[$k]);

            }else{

                array_unshift($tag,&#39;&#39;);

            }

        }

    }

    return $s.implode(&#39;&#39;,$tag);

}

ログイン後にコピー

                   

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