2

これをグーグルで検索してみましたが、うまくいきませんでした。どのように表現すればよいかわかりませんでした。とにかく、私はこの記事を持っています:

http://puu.sh/1CDtq

しかし、太字やイタリック体などを表示します (スタイル設定された記事のデフォルトの CSS を台無しにします。実際にはここに表示されるはずです: http://puu.sh/1CDwk (これは良いことです))。私が求めているのは、htmlエンティティをデコードしないようにするにはどうすればよいですか? news_content のデフォルトのテキストを表示するには?

これはコードです:

<?php echo substr($row['news_content'], 0, 150). "...... <a href=''>(Read More)</a>"; ?>
4

4 に答える 4

4

strip_tags()PHPで関数を使用する

echo substr(strip_tags($row['news_content']), 0, 150). "...... <a href=''>(Read More)</a>";
于 2012-12-19T06:37:32.123 に答える
2
<?php echo substr(strip_tags($row['news_content']), 0, 150). "...... <a href=''>(Read More)</a>"; ?>
于 2012-12-19T06:38:46.943 に答える
1

コンテンツをインラインでフォーマットしないでください。コンテンツ ページにはスタイルシートを使用してください。次に、すべての投稿を短縮するメイン ページで、書式設定を無視する特別なスタイルシートを使用します。

于 2012-12-19T06:37:28.237 に答える
1

HTML 文字列の長さを切り詰める前に、テキストに戻す必要があります。

これはstrip_tags、 の後にhtml_entity_decode.

html_entity_decode を使用することをお勧めします。そうしないと、文字列を切り捨てると、 のような HTML エンティティの途中で文字列が切り取られる可能性があるため&nbsp;です。

文字列を切り詰める前に両方を実行することは、結果の文字列の長さに HTML タグとエンティティが含まれないようにし、誤って半分に切り詰められないようにすることをお勧めします。

全体的な例を次に示します。

function gettextexcerpt($myhtml, $len = 150) {
    $myhtml = html_entity_decode(strip_tags($myhtml), ENT_QUOTES, 'UTF-8');
    return substr($myhtml, 0, $len);
};

UTF-8テキストに別の文字エンコーディングを使用している場合は変更します。

于 2012-12-19T06:50:47.853 に答える