ホームページ > バックエンド開発 > PHPチュートリアル > PHP arclist タグ、文字をインターセプトして最後にドットを追加する方法

PHP arclist タグ、文字をインターセプトして最後にドットを追加する方法

WBOY
リリース: 2016-06-13 13:36:17
オリジナル
1155 人が閲覧しました

PHP arclist タグ、文字をインターセプトして最後にドットを追加する方法
夢織り初心者
そのタグ
dede:arclist titlelen=42 row=12}

  • [field:title/]

  • {/dede:arclist}
    長さの作り方42 を超える 自動的に追加します... ドット ドット ドット

    -----解決策---------
    データベースからタイトルを取得するときに、
    SELECT id,left(title,42) をテーブルのタイトルとしてインターセプトすることもできます
    ------解決策---------

    話し合う

    データベースからタイトルを取得するときに、
    SELECT id,left(title,42) as title from table
    をインターセプトすることもできます
    ------解決策---------
    //中国語と英語のインターセプト
    関数を実装するCut_str($sourcestr, $cutlength = 10, $etc = '...')
    {
    $returnstr = '';
    $i = 0;
    $n = 0.0;
    $str_length = strlen($sourcestr); //文字列のバイト数
    while ( ($n{
    $temp_str = substr ( $sourcestr, $i, 1);
    $ascnum = ord($temp_str); //文字列内の $i 番目の文字の ASCII コードを取得します
    if ( $ascnum >= 252) / / ASCII ビットの上位が 252 に等しい場合
    {
    $returnstr = $returnstr . substr($sourcestr, $i, 6); //UTF-8 エンコーディング仕様に従って、連続する 6 文字がカウントされます。単一の文字として
    $i = $i + 6; //実際のバイトは 6 としてカウントされます
    $n++; // 文字列の長さは 1 としてカウントされます
    }
    elseif ( $ascnum >= 248 ) // ASCII の場合、ビット高は 248
    {
    $returnstr = $returnstr . substr($sourcestr, $i, 5); // UTF-8 エンコーディングによる仕様では、連続する 5 文字を 1 文字としてカウントします
    $i = $i + 5; //実際のバイトは 5
    $n++ としてカウントされます //文字列の長さは 1
    }
    elseif ( $ascnum >= 240 ) //ASCII ビットが 240 の場合
    {
    $returnstr = $returnstr . substr($sourcestr, $i, 4); UTF-8 エンコード仕様、連続する 4 文字を 1 文字としてカウントします
    $i = $i + 4; //実際のバイトは 4 としてカウントされます
    $n++; //文字列の長さは 1 としてカウントされます。
    }
    elseif ( $ascnum >= 224 ) //ASCII ビットが High で 224 の場合
    {
    $returnstr = $returnstr . substr($sourcestr, $i, 3); //UTF-8 エンコード仕様に従って、連続する 3 文字は 1 文字としてカウントされます
    $i = $ i + 3; //実際のバイトは 3 としてカウントされます
    $n++;は 1
    }
    elseif ( $ascnum >= 192 ) //ASCII ビットが High で 192
    {
    $returnstr = $returnstr($sourcestr, $i . , 2); //UTF-8 エンコード仕様に従って、連続する 2 文字は 1 文字としてカウントされます
    $i = $i + 2; //実際のバイトは 2
    $n++; /文字列の長さは 1
    }
    elseif ( $ascnum>=65 および $ascnum<=90 および $ascnum!=73) としてカウントされます / /大文字 I
    {
    $ を除くreturnstr = $returnstr . substr($sourcestr, $i, 1);
    $i = $i + 1; //実際のバイト数は 1
    $n++ としてカウントされます。外観上、大文字は 1 つの上位ビット文字としてカウントされます
    }
    elseif (!(array_search($ascnum, array(37, 38, 64, 109,119) ) === FALSE) ) //%,& ,@,m,w 文字は 1 文字幅です
    {
    $returnstr = $returnstr . substr($sourcestr, $i, 1);
    $i = $i + 1;バイト数は引き続き 1
    $n++ としてカウントされます。 //ただし、全体の外観を考慮して、これらのメモは 1 つの上位文字としてカウントされます
    }
    else //その他の大文字と小文字、半角文字も含みます。句読点
    {
    $returnstr = $returnstr .substr($sourcestr, $i, 1);
    $i = $i + 1; //実際のバイト数 1
    $n = $n; + 0.5; //残りの小文字と半角句読点は上位文字の半分の幅...
    }
    }
    if ( $i < ; $str_length )
    {
    $returnstr = $returnstr . $etc; //長さを超える場合は末尾に省略記号を追加します
    }
    return $returnstr;
    }

    または

    select * from tablename substring(title,1,10) as t

    ------解決策------------------
    実際、ホームページにはコードの一部がありますが、率直に言えば、
    を自分で追加するだけです。
    PHP コード
     を追加するプログラムがなぜ必要なのでしょうか。
    
     {dede:arclist flag='h' limit='0,1'}
                            

    [field:title/]

    [field:description function='cn_substr(@me,110)'/]...[全文を表示] ; /p> {/dede:arclist}

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