PHP 学習ガイド - 第 2 章

Dec 23, 2016 am 09:33 AM
PHPの学習

サーバーサイド Web スクリプト言語

この章のキーポイント
・静的 Web ページと動的 Web ページについて理解する
・クライアントサイドとサーバーサイドのスクリプト言語の比較
・サーバーサイド スクリプト言語の概要

この章では次のことに焦点を当てますさらに、サーバー側スクリプト言語自体と静的 HTML およびクライアント側テクノロジ一般との関係についても説明します。この章が終わるまでに、読者は PHP でできることとできないことを明確に理解し、PHP が最初にクライアントと通信する方法についても一般的に理解できるようになります。

静的 HTML

Web ページの最も基本的な形式は、完全に HTML で記述された純粋に静的なテキストのみのページです。図 2-1 の単純な HTML ページは一例です。

サーバーサイド Web スクリプト言語

この章の焦点
・静的 Web ページと動的 Web ページの理解
・クライアントサイドとサーバーサイドのスクリプト言語の比較
・サーバーサイド スクリプト言語の概要

この章の焦点この章では、サーバー側スクリプト言語自体について説明します。また、静的 HTML および一般的なクライアント側テクノロジとの関係についても説明します。この章が終わるまでに、読者は PHP でできることとできないことを明確に理解し、PHP が最初にクライアントと通信する方法についても一般的に理解できるようになります。

静的 HTML

Web ページの最も基本的な形式は、完全に HTML で記述された純粋に静的なテキストのみのページです。図 2-1 の単純な HTML ページは一例です。

図 2-1 静的 HTML Web ページの仕様

以下は図 2-1 のソース コードです:

図 2-2 に示すように、クライアント コンピューターがサーバーから応答を行うと、 Web またはイントランネット ページに対して HTTP リクエストを行う場合、サーバーはアーカイブ内で見つからないプレーン テキストを渡すだけで済みます。


データがクライアント コンピューターに返送されると、ブラウザーはソース コードの内容、ユーザーの好み、モニターのサイズ、その他の要因の正確な分析に基づいて、最適な処理と表示を行います。サーバー上の HTML ファイルの内容は、クライアント コンピューター上のページのソース コードとまったく同じです。

あなたのようなごく普通の静的 HTML には次の利点があります:

◆ どのブラウザでもそれを表示する機能があります。

◆ほとんどのデバイスで表示する機能があります。

◆すべてのリクエストを迅速に実行し、最小限のリソースを使用します。

◆ HTML は学習しやすく、または自動的に生成されます。

◆ 個々のページに小さな変更をすばやく加えます。

◆ もちろん、静的 HTML には欠点もあります。

◆ デザインとレイアウトを制御するのが難しい。

◆ 大量のページに拡張することはできません。

◆ インタラクティブ性が十分ではありません。

◆ ページに関する意味のあるメタデータを簡単に含めることができます。

◆ コンテンツやパーソナライズされた情報の急速な変化に対応するのは簡単ではありません。

◆ あまり魅力的ではありません。


なぜなら...それは「アマチュア」レベルまたは特定の理想的なアプリケーションとしかみなされないからです(この理想は一部のコンピューターサイエンスの専門家によって書かれたWebページと同じくらい確固たるものであり、彼らはすべてのWebページが以下に準拠する必要があると信じています) HTML3.1 仕様に準拠しており、読み取り可能なすべてのデバイスにインストールする必要があります)。

これらの制限に対処するために、クライアント側 JavaScript、カスケード スタイル シート (CSS)、Java アプレット、サーバー側データベース接続用のサーバー側スクリプト言語など、他の多くのテクノロジが最近開発されました。開発中のテクノロジーには XML と XSL が含まれており、どちらも他のさまざまな仕様 (XHTML、XSLT、XPath、ICE など) の一部です。

これらのテクノロジーがどのような機能を持っているのか、そしてそれらを自分の Web サイトに追加できるかどうかを理解するのに少し時間を取れば、将来頭痛の種を引き起こす可能性は確実に減ります。 Web タスクを実行する場合、最初に自問すべき基本的な質問は、「この計算はどこで実行されるのか、クライアントとサーバーのどちらで行うのか」ということです。

「動的」の意味 「静的」Web ページと「動的」Web ページの間には基本的かつ繰り返し発生する違いがありますが、「動的」は通常の HTML を除くほとんどすべてを意味します。これは、クライアント側の機能とサーバー側の機能の両方を記述するために使用されます。ユーザー側では、「ダイナミクス」はマルチメディア表示、タイトル行のスクロール、ページの自動更新、要素の表示と非表示などとして認識されます。サーバー側では、この用語は一般に、無線で送信され、インタラクティブに組み立てられるコンテンツを指すために使用されます。

クライアントテクノロジー

通常の HTML の場合、最も一般的なコンテンツの追加はクライアント側で行われます。これには、CSS やダイナミック HTML などの形式拡張機能、クライアント側スクリプト言語、Java アプレット、Flash が含まれます。これらのテクノロジーのサポートは (ほとんどが) Web ブラウジングに組み込まれています。表 2-1 にそれらの機能をリストします。一部の機能は重複しています。

表 2-1 クライアント側の HTML 拡張機能

図 2-3 にリストされているページの例は、図 2-1 と同じ内容に基づいています。


ソース コードからわかるように、この例では、いくつかの新しいスタイル シート、クライアント側のスクリプト、およびいくつかのより複雑な HTML コードが追加されています。


残念ながら、クライアント側テクノロジーの最大のセールスポイントは、最悪の品質でもあります。つまり、ブラウザーに完全に依存しているということです。同じブランドが製造した異なるバージョンであっても、各ブラウザの機能は大きく異なります。誰もがさまざまな方法でブラウザを構成することもできます。たとえば、セキュリティ上の懸念から JavaScript の使用を無効にし、ナビゲーションに JavaScript を過度に使用するサイトを閲覧できなくなる場合があります。 (前の例で関数を示すと)

さらに、多くのユーザーは、コストやテクノロジーの不足により、ブラウザーのアップグレードの結果が良くありません。 Web 開発者は、デバイスベースのブラウジング、一般およびグローバル ユーザーなどについて理解している必要があります。たとえば、Yahoo! と Amazon は、これらの標準を採用してから 3 年以上、スタイル シートと JavaScript を使用しないことを主張しています。 W3C からの圧力を受けて、多くの Web サイトは依然として FONT タグと BGCOLOR 属性の使用を頑固に主張しています。その顧客は、13 時位置のモニターを備えた古い Macintosh マシンで AOL 3.0 を使用しているユーザーである可能性があります。さらに皮肉なことに、Web は 5 年間の急速な発展を経験した後でも、開発者が顧客に絶対に保証できるのは、主にプレーン テキストである通常の HTML が表示されるということだけです。 (または、時の試練に簡単に成功した HTML のサブセットでも)

最後に、クライアント側のテクノロジーは、バックエンド サーバーへの接続を必要とする作業を実行できません。 JavaScript では、データベースに保存されているユーザー設定オプションに基づいてカスタマイズされたドロップダウン リストを即座に生成することはできません。リストに変更を加える必要がある場合、Web 開発者はページにアクセスして手動で変更する必要があります (サーバーサイド JavaScript では可能です)。現在は使用されていません) この問題に対して、サーバーサイド JavaScript 言語がこのギャップを埋める救世主となります。

つまり、レイアウト設定やブラウザ イベントを処理するすべてのアクションはユーザー側で発生します。一般的に、見た目のカッコいいエフェクトやマウスの動きに依存するものはユーザー側で行われます。イベントの表示が速いほど、そのイベントがクライアントによって処理される可能性が高くなります。これは、速度が速いということは、サーバーからダウンロードする必要がないことを意味するためです。

注:
「クライアントサイド Java (クライアントサイド Java)」とも呼ばれる Java アプレットは、他のクライアント側テクノロジーに比べてブラウザーへの依存度が低くなります。名前が示すように、これらはインターネット経由で配信される完全な小さな Java アプリケーションですが、クライアントのオペレーティング システムと直接対話する他のプログラミング言語で書かれたアプリケーションとは異なり、Java アプレットは JVM (Java 仮想マシン) と呼ばれるソフトウェア上で実行されます。 . 仮想マシン、Java 仮想ホスト)仲介ソフトウェア。 JVM は、実際のオペレーティング システムの上に存在するオペレーティング システムとみなすことができます。最新のブラウザのほとんどには十分ではない JVM が搭載されていますが、別途ダウンロードして使用することもできます。この動作の違いにより、アプレットは、ブラウザの比較的弱い機能によって制限されることなく、ブラウザが特別な機能を実行できるようになります。

アプレットはもともと、透明な接着剤のように見えるアイコン ロゴ、スクロールするタイトル バー、ジャンプ キーなどの単純なアニメーションを実装するために使用されていたため、初期の頃は無意味な小さなものであると考えられていました。幸いなことに、アプレットは進化しており、クロスワード パズル、ハノイ塔のシミュレーション、スーツやアクセサリーの試着、仮想モードなど、非常に人間的な目的に使用できるようになりました。


サーバー側スクリプト言語

図 2-4 は、サーバー スクリプト データ プロセスの概略図です。

クライアントサイドスクリプト言語は非常に魅力的であり、Web 開発で最も目を引く部分です。サーバーサイドプログラミングはその逆で、ユーザーには見えず、その背後に隠されています。サーバーサイド スクリプト プログラマーは常にバックエンド Web サーバー上のデータを探索しようとしていますが、フロントエンドでは芸術的才能を持つ同僚が公衆の前で自分の作品を表現できます。

サーバーサイド Web のスクリプト言語は、主に Web Web サイトをデータベースなどのバックエンド サーバーに接続し、双方向通信を可能にするために使用されます。


サーバーサイド Web のスクリプト言語は次のとおりです。主に Web ウェブサイトをデータベースなどのバックエンド サーバーに接続することで、双方向通信が可能になります。

◆ サーバーからクライアント: バックエンド サーバーの出力から Web ページを結合できます。

◆ クライアントからサーバーへ: クライアントが入力した情報を有効にします。

ユーザーからサーバーへの通信の一般的な例は、オンライン フォームと、サーバー上で動的に結合されるいくつかのドロップダウン リストです。 (通常はボタンを押す必要があります)。

サーバーサイドのスクリプト言語製品には、スクリプト言語とスクリプト エンジン (Web サーバーに組み込まれている場合と組み込まれていない場合があります) という 2 つの主要な部分があります。エンジン部分はすべて同じ会社またはチームによって開発されており、相互に組み合わせてのみ使用できます (PHP3 と ColdFusion はその 2 つの例です)。ただし、この規則には例外もあります。たとえば、Java Server Pages は、専用のスクリプト言語ではなく、標準のプログラミング言語で記述されています。一部のパートナーは、互換性のある互換性のあるエンジン (Allaire JRun、Apache JServ など) を開発しています。

理論的には、Active Server Pagesb では、ほとんどのスクリプト言語と、いくつかの一致する ActiveX スクリプト エンジンの 1 つを使用できます (ただし、実際には、 NT/IIS/VBScript/JScirpt の組み合わせを除き、他の組み合わせでは多くの問題が発生します)。現在、PHP4 のスクリプト エンジン (Zend) は理論的には PHP プログラミング言語から分離されているため、PHP4 は別個の独立したスクリプト テクノロジとみなされます。

図 2.5 は、サーバー側のソース コードとクライアント側のソース コードに基づいて、データベースから即座にページが生成される単純なサーバー側スクリプト言語の例を示しています。この例の目的は PHP の最終製品を示すことであり、正式なものではないため、データベース呼び出し (この本の第 2 部まで詳しくは説明しません) を組み込み、含まれるファイルの一部を省略しました。ジョブ実行可能ソース コードの使用法

以下はサーバー上のソース コードです

​​

これはクライアントに到達したときの同じページのソース コード表示フォームです:

上記は PHP 学習ガイド - 第 2 章の内容です, 詳細 関連コンテンツについては、PHP 中国語 Web サイト (www.php.cn) に注目してください。


このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、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衣類リムーバー

AI Hentai Generator

AI Hentai Generator

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開発を学ぶにはどうすればよいですか? PHP開発を学ぶにはどうすればよいですか? Jun 12, 2023 am 08:09 AM

インターネットの発展に伴い、動的な Web ページの需要が高まっています。 PHP は主流のプログラミング言語として、Web 開発で広く使用されています。では、初心者にとって、PHP 開発を学ぶにはどうすればよいでしょうか? 1. PHP の基本知識を理解する PHP は、HTML コードに直接埋め込み、解析して Web サーバーを通じて実行できるスクリプト言語です。したがって、PHP を学習する前に、HTML、CSS、JavaScript などのフロントエンド テクノロジの基本を理解しておくと、PHP の操作をよりよく理解できます。

PHP 学習ノート: Web クローラーとデータ収集 PHP 学習ノート: Web クローラーとデータ収集 Oct 08, 2023 pm 12:04 PM

PHP 学習メモ: Web クローラーとデータ収集 はじめに: Web クローラーは、インターネットからデータを自動的にクロールするツールで、人間の行動をシミュレートし、Web ページを閲覧し、必要なデータを収集できます。 PHP は、人気のあるサーバーサイド スクリプト言語として、Web クローラーとデータ収集の分野でも重要な役割を果たしています。この記事では、PHP を使用して Web クローラーを作成する方法を説明し、実践的なコード例を示します。 1. Web クローラーの基本原則 Web クローラーの基本原則は、HTTP リクエストを送信し、サーバーの H レスポンスを受信して​​解析することです。

PHP 学習ノート: モジュール開発とコードの再利用 PHP 学習ノート: モジュール開発とコードの再利用 Oct 10, 2023 pm 12:58 PM

PHP 学習メモ: モジュール開発とコードの再利用 はじめに: ソフトウェア開発において、モジュール開発とコードの再利用は非常に重要な概念です。モジュール開発では、複雑なシステムを管理しやすい小さなモジュールに分解して、開発効率とコードの保守性を向上させることができ、コードの再利用により、冗長なコードを削減し、コードの再利用性を向上させることができます。 PHP 開発では、何らかの技術的手段を通じてモジュール開発とコードの再利用を実現できます。この記事では、読者がこれらの概念をより深く理解し、適用できるように、一般的に使用されるいくつかのテクノロジと具体的なコード例を紹介します。

PHP 学習ノート: パフォーマンス分析とチューニング PHP 学習ノート: パフォーマンス分析とチューニング Oct 08, 2023 pm 03:21 PM

PHP 学習ノート: パフォーマンス分析とチューニング はじめに: Web 開発では、パフォーマンスは非常に重要な要素です。高性能の Web サイトは、より優れたユーザー エクスペリエンスを提供し、ユーザー維持率を向上させ、ビジネス収益を増加させることができます。 PHP 開発では、パフォーマンスの最適化が一般的かつ重要な問題です。この記事では、PHP でのパフォーマンス分析とチューニングの方法を紹介し、読者がこれらの手法をよりよく理解して適用できるように、具体的なコード例を示します。 1. パフォーマンス解析ツール Xdebug 拡張機能 Xdebug は、強力なパフォーマンス解析ツールです。

2023 年に PHP を学習する最善の方法は何ですか? 2023 年に PHP を学習する最善の方法は何ですか? Sep 10, 2023 pm 09:16 PM

2023 年に PHP を学習する最善の方法は何ですか?インターネットの急速な発展に伴い、コンピューター プログラミングは非常に高い雇用の可能性を秘めたスキルになりました。数あるプログラミング言語の中でも、PHP はネットワーク開発で広く使用されている言語です。 PHP を学習したい場合は、最適な学習方法を知ることが重要です。 PHP は、動的な Web サイトやアプリケーションの開発に使用されるオープンソースのサーバー側スクリプト言語です。 PHP は他の言語に比べて学習時間が短く、応用範囲が広いため、初心者にとって理想的な選択肢です。

PHP でのビデオ特殊効果とフィルター処理関数を学習します。 PHP でのビデオ特殊効果とフィルター処理関数を学習します。 Aug 07, 2023 pm 11:53 PM

PHP でのビデオ特殊効果とフィルター処理機能のメソッドを学習します。PHP は、Web 開発の分野で広く使用されている強力なプログラミング言語です。 Web サイトのデザインの発展に伴い、ビデオの特殊効果やフィルター処理がますます普及しています。この記事では、PHP を使用してビデオ特殊効果やフィルター処理を実装する方法と、よく使用される関数メソッドをいくつか紹介します。 1. ffmpeg 拡張機能をインストールする. ビデオを処理するには、ffmpeg 拡張機能をインストールする必要があります。この拡張機能を使用すると、ビデオ処理のために PHP で ffmpeg コマンドを直接呼び出すことができます。インストールプロセス

PHP 学習メモ: フロントエンドとバックエンドの分離と API 設計 PHP 学習メモ: フロントエンドとバックエンドの分離と API 設計 Oct 08, 2023 am 09:42 AM

PHP 学習ノート: フロントエンドとバックエンドの分離と API 設計の概要: インターネットの継続的な発展とユーザー ニーズの増大に伴い、フロントエンドとバックエンドの分離の開発モデルはますます注目を集めています。開発者。フロントエンドとバックエンドの分離とは、フロントエンドとバックエンドの開発を分離し、APIを介してデータ連携を行うことで開発の効率性と柔軟性を実現することを指します。この記事では、フロントエンドとバックエンドの分離の概念と API の設計方法を紹介します。フロントエンドとバックエンドの分離の概念: 従来の Web 開発モデルはフロントエンドとバックエンドの結合、つまりフロントエンドとバックエンドの開発が同じプロジェクトで実行されます。

PHP 学習メモ: フォーム処理とデータ検証 PHP 学習メモ: フォーム処理とデータ検証 Oct 09, 2023 am 08:52 AM

PHP 学習ノート: フォーム処理とデータ検証 Web 開発において、フォームはユーザーが Web サイトと対話するための重要なコンポーネントの 1 つです。ユーザーが Web サイト上でフォームに記入してデータを送信するとき、Web サイトはデータの正確性と安全性を確保するために、送信されたデータを処理および検証する必要があります。この記事では、PHP を使用してフォームを処理し、データ検証を実行する方法を紹介し、具体的なコード例を示します。フォームの送信とデータの前処理 HTML では、<form> タグを使用してフォームを作成し、フォームを指定する必要があります。

See all articles