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

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

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

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 を変更: 改行を削除、タブを削除、コメント マークを削除 <br>foreach ( $chunks as $c ) <br>{ <br>if ( strpos( $c, '<pre class="brush:php;toolbar:false">{ <br>//[higrid.net] 新しい行とタブを削除します <br>$c = preg_replace( '/[\n\r\t]+/', ' ', $c ); <br>// [higrid.net] ] 余分な空白を削除します <br>$c = preg_replace( '/\s{2,}/', ' ', $c ); <br>// [higrid.net] タグ間の空白を削除します <br>$c = preg_replace( '/ &gt) ;\s', '>// [higrid.net] CSS および JS コメントを削除 <br>$c = preg_replace( '/\/\*.*?\*\ / /i', '', $c ); <br>} <br>$higrid_uncompress_html_source .= $c; <br>} <br><br> <br><br> 一部の子供用シューズは 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 までご連絡ください。
PHPアプリケーションをより速くする方法PHPアプリケーションをより速くする方法May 12, 2025 am 12:12 AM

tomakephpapplicationsfaster、followthesesteps:1)useopcodecachinglikeopcacheTostoredscriptbytecode.2)最小化abasequeriesecachingingindexing.3)leveragephp7機能forbettercodeefficiency.4)

PHP依存性インジェクション:コードのテスト可能性を改善しますPHP依存性インジェクション:コードのテスト可能性を改善しますMay 12, 2025 am 12:03 AM

依存性注入(DI)は、明示的に推移的な依存関係によりPHPコードのテスト可能性を大幅に改善します。 1)DI分離クラスと特定の実装により、テストとメンテナンスが柔軟になります。 2)3つのタイプのうち、コンストラクターは、状態を一貫性に保つために明示的な式依存性を注入します。 3)DIコンテナを使用して複雑な依存関係を管理し、コードの品質と開発効率を向上させます。

PHPパフォーマンスの最適化:データベースクエリの最適化PHPパフォーマンスの最適化:データベースクエリの最適化May 12, 2025 am 12:02 AM

DatabaseQueryoptimizationInpholvesseveralstrategESTOEnhancePerformance.1)selectonlynlynlyndorycolumnStoredatedataTransfer.2)useindexingtospeedupdataretrieval.3)revenmecrycachingtostoreres sultsoffrequent queries.4)

簡単なガイド:PHPスクリプトで電子メールを送信します簡単なガイド:PHPスクリプトで電子メールを送信しますMay 12, 2025 am 12:02 AM

phpisusededemingemailsduetoitsbuilt-inmail()functionandsupportiveLibrarieslikephpmailerandswiftmailer.1)usethemail()functionforbasicemails、butithaslimitations.2)emploadforadvancedfeatureSlikelikelivableabableabuses.3)雇用

PHPパフォーマンス:ボトルネックの識別と修正PHPパフォーマンス:ボトルネックの識別と修正May 11, 2025 am 12:13 AM

PHPパフォーマンスボトルネックは、次の手順で解決できます。1)パフォーマンス分析にXdebugまたはBlackfireを使用して問題を見つける。 2)データベースクエリを最適化し、APCUなどのキャッシュを使用します。 3)array_filterなどの効率的な関数を使用して、配列操作を最適化します。 4)bytecodeキャッシュ用のopcacheを構成します。 5)HTTP要求の削減や写真の最適化など、フロントエンドを最適化します。 6)パフォーマンスを継続的に監視および最適化します。これらの方法により、PHPアプリケーションのパフォーマンスを大幅に改善できます。

PHPの依存関係注射:簡単な要約PHPの依存関係注射:簡単な要約May 11, 2025 am 12:09 AM

依存関係(di)inphpisadesignpatternativats anducesclassodulencies、拡張測定性、テスト可能性、および維持可能性。

PHPパフォーマンスの向上:キャッシュ戦略と技術PHPパフォーマンスの向上:キャッシュ戦略と技術May 11, 2025 am 12:08 AM

cachingemprovesppperformancebystring of computationsorquickretrieval、還元装置の削減は、reducingerloadendenhancersponseTimes.efcectivestrategiesInclude:1)opcodecaching、compiledphpscriptsinmemorytoskipcompilation;

See all articles

ホット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 統合開発環境

SublimeText3 Linux 新バージョン

SublimeText3 Linux 新バージョン

SublimeText3 Linux 最新バージョン

WebStorm Mac版

WebStorm Mac版

便利なJavaScript開発ツール