ホームページ バックエンド開発 PHPチュートリアル html/js/Cssを簡単に圧縮するPHP圧縮HTML関数と注意点_PHPチュートリアル

html/js/Cssを簡単に圧縮するPHP圧縮HTML関数と注意点_PHPチュートリアル

Jul 21, 2016 pm 03:13 PM
css html php 関数 追加 圧縮 どうやって 成し遂げる 改善する 予防 ウェブページ 簡単

HTMLを圧縮する理由
Webページの読み込み速度を改善する方法とHTMLページを最適化する方法は、Webサイト構築スキルを向上させたいすべてのWebマスターが考えたことがある問題です。実際、最適化する方法はまだたくさんあります。ウェブページ。

一部の子供たちは、higrid に HTML を圧縮する方法、つまり、実行前にすべての html、js、css を 1 行に圧縮し、コメント マーク、改行、スペース、タブなどを削除できるかどうかを尋ねました。この直接的な利点は、HTML ページのサイズが削減され、フロントエンドの読み込み速度が向上することです。多くの人は gzip が有効になっていると考えていますが、現在の HTML は動的であり、ブラウザのキャッシュを使用しないため、一般に HTML に対して gzip 圧縮を有効にすることはまれです。gzip が有効になっている場合、各リクエストを圧縮する必要があり、消費量が増加します。リソースの場合、js と css は両方ともキャッシュを使用するため、js と css に対して gzip を有効にすることをお勧めします。そして、誰もが圧縮をフィルタリングするために多くのソフトウェアを使用していますが、オンラインの js/css/html 圧縮ツールもあり、Higrid はそれが非常に面倒で可読性が低いと考えています。 Higrid は、圧縮関数を関数にすると、開発者には圧縮されていない状態が表示されると考えていますが、訪問者がアクセスすると、サーバー側プログラムが HTML ページを圧縮し、コメント マーク、改行、スペース、タブをクリアするまで待機します。 htmlのサイズを減らすという目的を達成します。 higrid.net に頻繁にアクセスする場合は、右クリックして HTML ソース コードを表示すると、この記事の HTML ソース コードが圧縮されていることがわかります。 higrid.net が提供する無料のコンテンツ管理システムを含め、出力は空白、改行、タブが削除された圧縮 html になります。ただし、higrid.net にはいくつかの例外があります。つまり、higrid.net では主にオンライン テーブル、オンライン グラフィックス (jquery デモを含む) を推奨しています。訪問者の便宜のため、圧縮は有効になっていません。

したがって、Higrid は、HTML を圧縮することの最大の利点は、一度関数を作成しておけば、将来必要になったときにすべてのプログラムで呼び出すことができることであると個人的に感じています。追加の開発作業を追加せずに使用できます。今日はhigridが私が個人的に便利だと思う機能をいくつか紹介しますので、ぜひ試してみてください。

phpを使用してHTMLを圧縮しますhigridはphpに興味があるため、HTMLを圧縮するためにphpを使用します。もちろん、たとえばaspを使用してHTMLを圧縮する場合も原理は同じです。 。

higrid は、HTML を圧縮する関数を PHP の関数に記述します。実際、このような PHP 圧縮関数はインターネット上にたくさんあります。Baidu や Google で検索してみてください。特に JS や CSS を圧縮する場合にはあまり役に立ちません。主な理由は、圧縮コメントやその他の側面の違いが問題を引き起こすことです。 まずこの関数を見てみましょう:

コードをコピーします コードは次のとおりです:
/**
* HTML を圧縮: 改行をクリア、タブをクリア、コメントマークを削除
* @param $string
* @return COMPLEX $string
**/
function compress_html($string){
$string=str_replace("rn" ,'',$string );//改行文字をクリア
$string=str_replace("n",'',$string);//改行文字をクリア
$string=str_replace("t",'',$string );//システムテーブルシンボルをクリア
$pattern=array(
"/> *([^ ]*) *"/[s]+/",
" //",
"/" /",
"/ "/",
"'/*[^*]**/'"
);
$replace=array (
" >\1" ",
"",
""",
""",
""
return preg_replace($pattern, $replace, $string); );
}


phpを使ってHTMLを圧縮する時の注意点
phpを使ってHTMを圧縮する実装方法は主に正規表現を使った検索と置換です。 HTML を圧縮するときは、主に次の点に注意する必要があります:
1. HTML ドキュメントでは、複数の空白文字は 1 つの空白文字と同等です。つまり、改行などの空白文字の削除は安全ではなく、一部の要素のスタイルに違いが生じる可能性があります。
2.html には pre があり、これはフォーマット済みテキストを意味します。その中の空白は削除できないため、pre タグと textarea タグ内のコンテンツ形式は保持する必要があり、圧縮することはできません。
3. HTML には IE の条件付きコメントが含まれる場合があります。これらの条件付きコメントはドキュメント ロジックの一部であり、削除できません。したがって、HTML コメントを削除する場合、次のような一部のコメントは削除できません。
4. 埋め込み JS でコメントを圧縮する場合は、次のようなコメント記号が文字列に含まれる可能性があるため注意してください。 var url = "http:// www. higrid.net"; // 前の // はコメントではありません
5. 動的ページの場合、HTML 圧縮によりサーバーの CPU 負荷が増加する可能性もあり、これは利益よりも有害です


PHP 圧縮 HTML 関数コードが使用されますhigrid
コメントはコードに影響を与えるため、higrid で使用される php 圧縮 html 関数のコードはコメントを削除せず、直接コードに移動します。

コードをコピーします コードは次のとおりです:

関数 higrid_compress_html($higrid_uncompress_html_source )
{
$chunks = preg_split( '/()/ms', $higrid_uncompress_html_source, -1, PREG_SPLIT_DELIM_CAPTURE ); _html_ ソース = ''; / /[higrid.net] 圧縮 HTML を変更: 改行を削除、タブを削除、コメント マークを削除
foreach ( $chunks as $c )
{
if ( strpos( $c, '{
//[higrid.net] 新しい行とタブを削除します
$c = preg_replace( '/[\n\r\t]+/', ' ', $c );
// [higrid.net] ] 余分な空白を削除します
$c = preg_replace( '/\s{2,}/', ' ', $c );
// [higrid.net] タグ間の空白を削除します
$c = preg_replace( '/ >) ;\s<', $c );
// [higrid.net] CSS および JS コメントを削除
$c = preg_replace( '/\/\*.*?\*\ / /i', '', $c );
}
$higrid_uncompress_html_source .= $c;
}



一部の子供用シューズは HTML の圧縮を推奨していません主な理由は、PHP で HTML を圧縮する場合の上記の注意事項に加えて、gzip 圧縮によって良好な結果が得られるためです。また、HTMLに影響を与える役割(静的、動的、フロントエンド動的)が多すぎて、定量的な指標がないため、どのように圧縮するか(どの程度コードを記述するか)を制御することが困難です。コードでは、送信効率ではなく実行効率を考慮する必要があります。動的ページの場合、HTML 圧縮によってサーバーの CPU 負荷が増加する可能性もありますが、これはメリットに見合ったものではありません。 Google が Web ページを圧縮したのは、初期の頃、ホームページのテキストをできるだけ 1 つまたは 2 つのパッケージ内に収めたいと考えていたことと、ホームページが重要すぎてトラフィックが法外だったためです。 1バイト圧縮すると総通信量が膨大になるので当然必要になります。これ以上の圧縮には問題があり、Google のように徹底的にテストしない限り、HTML の圧縮は推奨されません (Google もコア サービスからの少数のページしか圧縮しません)。

しかし、higrid.net の php 圧縮 html 関数コードを使用すると、この問題をうまく解決できます。さて、早速試してみましょう。

http://www.bkjia.com/PHPjc/326529.html
www.bkjia.com

tru​​ehttp://www.bkjia.com/PHPjc/326529.html技術記事 HTML を圧縮する理由: Web ページの読み込み速度を向上させる方法と HTML ページを最適化する方法は、Web サイト構築スキルを向上させたいすべての Web マスターが考えたことがある問題であると考えられています。まだとても...
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

PHPおよびPython:さまざまなパラダイムが説明されています PHPおよびPython:さまざまなパラダイムが説明されています Apr 18, 2025 am 12:26 AM

PHPは主に手順プログラミングですが、オブジェクト指向プログラミング(OOP)もサポートしています。 Pythonは、OOP、機能、手続き上のプログラミングなど、さまざまなパラダイムをサポートしています。 PHPはWeb開発に適しており、Pythonはデータ分析や機械学習などのさまざまなアプリケーションに適しています。

HTML:構造、CSS:スタイル、JavaScript:動作 HTML:構造、CSS:スタイル、JavaScript:動作 Apr 18, 2025 am 12:09 AM

Web開発におけるHTML、CSS、およびJavaScriptの役割は次のとおりです。1。HTMLは、Webページ構造を定義し、2。CSSはWebページスタイルを制御し、3。JavaScriptは動的な動作を追加します。一緒に、彼らは最新のウェブサイトのフレームワーク、美学、および相互作用を構築します。

PHPとPythonの選択:ガイド PHPとPythonの選択:ガイド Apr 18, 2025 am 12:24 AM

PHPはWeb開発と迅速なプロトタイピングに適しており、Pythonはデータサイエンスと機械学習に適しています。 1.PHPは、単純な構文と迅速な開発に適した動的なWeb開発に使用されます。 2。Pythonには簡潔な構文があり、複数のフィールドに適しており、強力なライブラリエコシステムがあります。

PHPとPython:彼らの歴史を深く掘り下げます PHPとPython:彼らの歴史を深く掘り下げます Apr 18, 2025 am 12:25 AM

PHPは1994年に発信され、Rasmuslerdorfによって開発されました。もともとはウェブサイトの訪問者を追跡するために使用され、サーバー側のスクリプト言語に徐々に進化し、Web開発で広く使用されていました。 Pythonは、1980年代後半にGuidovan Rossumによって開発され、1991年に最初にリリースされました。コードの読みやすさとシンプルさを強調し、科学的コンピューティング、データ分析、その他の分野に適しています。

PHPの影響:Web開発など PHPの影響:Web開発など Apr 18, 2025 am 12:10 AM

phphassiblasifly-impactedwebdevevermentandsbeyondit.1)itpowersmajorplatformslikewordpratsandexcelsindatabase interactions.2)php'sadaptableability allowsitale forlargeapplicationsusingframeworkslikelavel.3)

クラフトCMSのキャッシングの問題を解決する:Wiejeben/Craft-Laravel-Mixプラグインの使用 クラフトCMSのキャッシングの問題を解決する:Wiejeben/Craft-Laravel-Mixプラグインの使用 Apr 18, 2025 am 09:24 AM

CraftCMSを使用してWebサイトを開発する場合、特にCSSやJavaScriptファイルを頻繁に更新する場合、リソースファイルのキャッシュ問題が発生することがよくあります。古いバージョンのファイルがブラウザによってキャッシュされ、ユーザーが最新の変更を表示しないようにすることがあります。この問題は、ユーザーエクスペリエンスに影響を与えるだけでなく、開発とデバッグの難しさを高めます。最近、プロジェクトで同様のトラブルに遭遇し、いくつかの調査の後、プラグインWiejeben/Craft-Laravel-Mixが見つかりました。

PHPの継続的な使用:その持久力の理由 PHPの継続的な使用:その持久力の理由 Apr 19, 2025 am 12:23 AM

まだ人気があるのは、使いやすさ、柔軟性、強力なエコシステムです。 1)使いやすさとシンプルな構文により、初心者にとって最初の選択肢になります。 2)Web開発、HTTP要求とデータベースとの優れた相互作用と密接に統合されています。 3)巨大なエコシステムは、豊富なツールとライブラリを提供します。 4)アクティブなコミュニティとオープンソースの性質は、それらを新しいニーズとテクノロジーの傾向に適応させます。

ウェブサイトのパフォーマンスを最適化する方法:Minifyライブラリの使用から学んだ経験とレッスン ウェブサイトのパフォーマンスを最適化する方法:Minifyライブラリの使用から学んだ経験とレッスン Apr 17, 2025 pm 11:18 PM

Webサイトの開発の過程で、ページの読み込みを改善することは常に私の最優先事項の1つです。かつて、Webサイトのパフォーマンスを向上させるために、Miniifyライブラリを使用してCSSファイルとJavaScriptファイルを圧縮およびマージしようとしました。しかし、私は使用中に多くの問題と課題に遭遇しました。最終的には、Miniifyがもはや最良の選択ではない可能性があることに気付きました。以下では、私の経験と、Composerを通じてMinifyをインストールして使用する方法を共有します。

See all articles