PHP 学習ガイド - 第 5 章

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

第5章

構文、変数、出力

この章のキーポイント

◆ PHPプログラムコードの基本ルールを理解する

◆ 情報を変数に格納する

◆ 出力をWebページに表示する

この章では、 PHP の基本構文は、通常の形式を使用するすべての PHP プログラム コードが従わなければならない規則です。また、PHP コードの実行時に変数を使用して情報を保存および取得する方法についても説明し、最後にユーザーのブラウザ ウィンドウにテキストを表示する最も簡単な方法について説明します。

PHP 構文の緩さと柔軟性

PHP について、最初に言及すべきことは、可能な限り緩さと柔軟性を追求しているということです。プログラミング言語は、従うべき文法規則の厳密さによって大きく異なります。そうすることで、必要なものを正確に書くことができるため、選択することが最善です。原子炉を制御するプログラムを作成していて、変数の指定を忘れた場合、元の設計意図から徐々に逸脱するよりは、プログラムの実行を拒否する方がはるかに良いでしょう。ただし、PHP 自体は、使いやすくすることよりも、デザイナーが正しく使用できるようにすることに重点を置いているため、PHP の基本的な設計原則は別の仕様テンプレートに基づいています。 . プログラムは、プログラム コードの意味を指定するために余分な作業を行います。 PHP で必要なプログラム コードは非常に少ないですが、プログラム コードの意味を可能な限り最大限に表現できます。これは、変数宣言や関数プロトタイプなど、他の言語にある特定の構文機能が PHP では必要ないことを意味します。

とはいえ、PHP はユーザーが考えていることを読み取ることはできませんが、それでもユーザーが表現する必要があり、従うべき文法規則がいくつかあります。当初作成する予定だった Web ページではなくブラウザ ウィンドウに「解析エラー」が表示された場合、作成したプログラム コードが PHP が許容できない程度にルールに違反していることを意味します。

HTML は PHP ではありません

覚えておくべきもう 1 つの重要な点は、この構文は PHP 内でのみ使用する必要があるということです。 PHP は HTML に埋め込まれているため、このようなファイルでは、各部分はそれぞれ PHP または HTML によって解釈され、その中の PHP タグに従って区別されます。

PHP 構文は PHP 内でのみ有効であるため、この章の内容は PHP モードを参照していると想定されます。つまり、ほとんどのプログラム コード スニペットは HTML Web ページに埋め込まれており、適切なマークアップ マークによって区別されると想定されています。 。

PHP には C 言語の構文スタイルがあります

理解すべき 3 番目の重要な点は、PHP は C 言語スタイルに非常によく似たプログラミング言語であるということです。読者がすでに C を知っている場合は、PHP をすぐに学ぶことができます。それでもうまくいかない場合は、マニュアルをもう一度確認してください。この章の残りの部分は、C をまだ知らない人向けです。C プログラマであれば、この章のタイトルをすぐに読むことができます。C 言語プログラマが作成した付録も参照してください。したがって、貴重な時間を節約できます。

PHP は半空白には敏感ではありません

半空白とは、プログラマが入力する画面上の空の部分で、スペース (スペースハー)、タブ文字、Enter キー (行末の終端記号) などが含まれます。 PHP はそのような空白には敏感ではありませんが、これは空白やそのようなコンテンツが重要ではないという意味ではありません (実際、PHP 言語で「単語または単語」を区切るには空白や空白は依然として非常に重要です)。スペースの数に関係なく、1 つのスペース文字はそのような多くの文字と同じです。

たとえば、2+2 の合計を変数 $four に代入する以下のすべての PHP 構文は等しい

$four=2+2; // 単一のスペース

$four =2+2; tab キー

$four =

2

+

2; //複数行スタイル

Enter キーの行末記号を空白として使用すると、空白がないことを意味するため、非常に便利です。構文は 1 行にする必要があるため、プログラムの作成が非常に簡単になります。

PHP は大文字と小文字を区別することがあります

前に述べたように、PHP は大文字と小文字を区別することがあります (つまり、英語の大文字と小文字の違いを区別します) ことに読者は驚かれるかもしれません。これは、すべての変数設定において特に注意する必要があります。次のようなプログラム コードを HTML ページに埋め込む場合:

<?php

$capital=67;

Print(“Variable capital is $capital<BR>”);

Print(“Variable CaPiTaL is $ CaPiTaL<BR>”);

?>
ログイン後にコピー

出力結果は

変数の資本は67です

変数CaPiTaLは

これは、変数が異なるケースを使用しているため、2つの異なる変数に分割されています。 (驚くべきことに、デフォルトのデバッグ設定では、このようなプログラム コード スニペットは PHP エラーを生成しません。この章で後述する「未指定の変数」セクションを参照してください。)

一方、PHP と C 言語の違いは、関数名は、基本的な構文構造 (if、then、else、while など) と同様に、大文字と小文字が区別されません。

説明文はセミコロンで終わります

以下は $greeting 変数に文字列を割り当てる一般的な PHP 文です。

$greeting="PHP へようこそ!";この章では、より小さなコンポーネントからこのようなステートメントを構築する方法と、PHP インタープリターが表現の評価操作を実行する方法を紹介します (これらのステートメントや式にすでに精通している場合は、この内容をスキップできます)。

PHP の最小構造は、数値 (3.14159)、文字列 (?tow?)、変数 ($tow)、定数 (TRUE)、特殊な単語 (if、else) などの分割できないトークンであり、 PHP 自体の構文など)、それらは空白やその他の特殊文字 (括弧や中括弧など) によって互いに区切られています。

PHP で最も複雑な構造は式です。これは、タグと [値] を任意に組み合わせたものです。単一の数値も式であり、単一の変数も式です。単純な式を組み合わせてより複雑な式を作成するには、通常、式の間に演算子を追加するか (たとえば、2+(2+2))、式を関数として呼び出します (たとえば、pow(2*3, 3*2))。 2 つの入力を取る式の番号は入力として扱われるため、入力を持つ関数は関数名の後に入力を括弧で囲み、入力 (パラメーターと呼ばれる) はカンマで区切られます。

式の評価操作

PHP インタープリターがプログラム コード内で式を検出すると、その式はすぐに評価されます。これは、PHP が式の最小要素の値から開始し、式の値全体が生成されるまで、演算子または関数で接続されたこれらの値を結合し続けることを意味します。たとえば、判断プロセスの各ステップは想像力で次のようになります:

$result=2*2+3*3+5;

(=4+3*3+5)//想像力 推定プロセス

(=4+9+5)

(=13+5)

(=18)

結果は $result 変数に格納される数値 18 になります。


評価の優先順位、結合性、順序

PHP 式の評価には 2 種類の問題がある可能性があります: 部分式が結合されている場合、または結合されている場合、評価の順序は何ですか?たとえば、今示した評価評価プロセスでは、乗算は加算よりも密接に結合しており、最終結果に影響を与えます。

組み合わせた式を操作する具体的な方法は、優先順位ルールと呼ばれます。優先度の高い演算子は、最初に他の周囲の式を取得して操作します。必要に応じて、これらのルールを覚えておいてください。たとえば、[*] は常に [+] よりも優先されます (これらのルールについては後続の章で詳しく説明します)。または、この鉄則を使用してください。疑わしい場合は、括弧を使用して式を結合してください。

例:

$resultl=2+3*4+5//結果は19です

$result2=(2+3)*(4+5)//結果は45です

演算子の優先順位ルールは、式がどのように結合されるかについてのあいまいさを取り除きますが、演算子が同じ優先順位を持つ場合はどうなるでしょうか?たとえば、次の式を考えてみましょう:

$how_much=3.0/4.0/5.0;

この式は、どの除算演算子が数値 4.0 を最初に処理するかによって、0.15 または 3.75 に等しくなります。オンラインの説明書には結合性ルールの完全なリストがありますが、覚えておくべき最も重要なルールは、結合性は通常は左から右の順序であるということです。つまり、上記の式は の左側の除算演算子であるため、0.15 と評価されます。 2 つの除算演算子が優先されます。

最後の質問は評価の順序ですが、これは結合性とは異なります。たとえば、次の算術式:

3*4+5*6

乗算は加算の前に実行する必要があることはわかっていますが、これは PHP がどの乗算演算を最初に実行するかを知っていることを意味するわけではありません。一般に、評価順序はほとんどの場合結果に影響しないため、ユーザーは評価順序を気にする必要はありません。通常、式の他の部分での部分式の指定により、結果が評価の順序に依存する、いくつかの奇妙な例を構築できます。たとえば、

$hun=($this=$that+5)+($that+$this+3); //悪い例

ただし、このようには書かないでください。 PHP には依存関係がある可能性がありますので、結果については説明しません (左から右の評価順序に依存する唯一の合理的な使用法は、ブール式の「ショート パス」モードです。これについては後で説明します)第 7 章の表紙で説明します)。

式と型

通常程序设计师会很小心地配合表达式的类型和将它们组合在一起的运算子或函式。常见的表达式是数学的表达式(用数学运算子结合数字)、Boolean表达式(用and或or结合true或false的语句)或字符串连算式(用运算子和函式来建构字符串)。与PHP的其余部分一样,对类型的处理会很宽松。例如,下面有表达式范例,很明显地它将两个运算试很不恰当地混合在一起使用了:

2 + 2 * ?nonsense? + TRUE
ログイン後にコピー

这个表达式不会产生错误,而是求值为数字「3」(你可以暂时把这个范例当作猜谜,下一章将解释为什么会出现这样的结果)。

指定表达式

最常见的表达式类型是指(assignment),在表达式中,把一个变数设置为等于某表达式的评算求值结果。表达式的形式是,先有一个变量名(是以「$」开头),后面是一个等号,然后是要评算求值的表达式。例如,

$eight=2 * (2 * 2)
ログイン後にコピー

$eight」将按照所我们所希望的方式被指定。

有一件要记住的重要事项是,指定表达式也是一种表达式,因此它们本身是有「值」的!运算工指定的对象无论是变量或值都是相同的。这意谓着可以在更复杂的表达式中间使用表达式。如果对下面的表达式求值:

$ten=($two = 2)+($eight = (2 * 2))
ログイン後にコピー

每个变量都将被指定为等于其名称的数值。

总而言之,PHP中的叙述语句(statement)可以是最后带带着分号(;)的任何表达式。如果把表达式看成是词组,则叙述语句则算是「整个句子」了,分号就算是句子结尾处的句号。任何括在PHP标记内有效PHP叙述语句都算是PHP的有效程序代码。

使用表达式和语句的理由

通常只有两个理由需要在PHP中编写表达式:为了取得它的值(value),或者为了取得次作用(side effect)。表达式的值传递给包含它的更复杂表达式;而次作用是除求值结果以外发生的任何事情。最典型的次作用包括指定或更改变量,在使用者屏幕是显示某些内容,或者对程序环境的一些其它持久性改变(诸如与数据库的互动)。

仅管叙述语句是表达式,但它们本身不能包含在更复杂的表达式中,这意味着使用叙述语句的唯一理由就是它的「次作用」!这也意味着可以编者编写一些合法但完全无用的语句,例如下面的第二条语句:

Print(“Hello”);//副加效应为输出显示至屏幕

2 * 3 + 4;//无用,没有效应产生

$value_num= 3 * 4 + 5;//副加效应为指定

Store_in_database(49.5);//副加效应到数据库

大括号的使用

虽然叙述句不能像表达式那样合并,但可以在能够使用语句的位置放入一串语句,把它们括在大括号中即可。

例如,PHP中的if结构有个测试条件(在圆括号中),条件后面是如果判断结果为真则应该执行的语句。如果在判断为真时要执行多条语句,可以使用大括号括住的这一堆叙述语句。下面的二个if程序代码段是相等的(都是判断一个恒真的叙述并印出相同讯息):

if(3==2+1)

print(“Good – I haven′t totally lost my mind.<BR>”);

if(3 ==2+1)

{

Print(“Good – I haven′t totally ”);

Print(“lost my mind.<BR>”);

}
ログイン後にコピー

在大括号包围住的中央可放置任何语句,其中包括本身带有大括号区块的if叙述。这表示if语句可包含另一个if叙述,这种巢状嵌套可依需要套入任意层。

注释

注释是程序的一部分,就是我们人类用来解释说明程序而使用,目的是帮助说明解释程序代码。程序执行器对程序代码做的第一件事情就是剔除注释,因此注释对程序的功能没有任何作用。但它对于帮助其它人在阅读程序代码时,更能理解原设计者在编写程序时的想法,因此注释也可算是无价的,即使就是程序设计师自己编写了一段时间之后,再回头看自己的程序也是如此。

PHP算是从几种不同程序设计语言(包括C、Perl和UNIX的shell script)获取灵感。因而PHP支持所有这些语言的注释风格,并且这些风格可在PHP程序代码中自由混合使用。

属于C语言风格的多行注释

多行的注释风格和C中的相同:注释从字符对「/*」开始,以字符对「*/」当作结束。例如:

* This is

A comment in

PHP */
ログイン後にコピー

关于多行注释,要记住的最重要一点是,注释不能巢状嵌套方式编写。不能在一个注释内放另一个注释。如果试图这样做,注释将在第一个「*/」字符对后结束,原本要作为注释的其余部分将被解释为程序代码,可能会导致错误的结果。例如:

/* This comment will /* fail horribly on the

Last word of this */sentence

*/
ログイン後にコピー

这是一种很容易造成的无心错误,通常发生在试图「注释」一段已经有注释语言的程序时,是常遇到的,请读者小心。

单行注释:「#」和「//」

除了/*…*/这种多行注释之外,PHP还支持两种在给单行使用的不同注释方式,一种是从C和Java继承来的,另一种是则后Perl和shell script继承来的。Shell script风格的注释以「#」符号开始,而C++风格的注释以双斜线「//」开始。这两种方法都会将加注的该行叙述的剩余部分当成注释对待,如下所示的范例:

# This is a comment ,and

# this is the second line of the comment

//This is a comment too.Each style comments only

//one line so the last word of this sentence will fail horribly.
ログイン後にコピー

非常机灵的读者认为单行注释与我们前面所介绍到的空白不敏感性并不相容。这是对的,如果采用单行注释并用Enter行结束符号替换了其中一个空格,结果全是不同的。以更精确的讲法是,PHP在从程序代码中剔除了注释后,程序代码才是对空白不敏感的。

变数

在PHP程序中间储存信息的主要方式是透过使用「变量」,这是取一个名称然后保存发后要使用的任意值的方式。

关于PHP中的变量,以下有几点正是要注意知道(后面会有更详细的讲解):

◆ PHP中的所有变量都要在最前面加上「$」符号标示。

◆ 变数中的值是它最近被指定的值。

◆ 变量用「=」运算子进行指定,变量在左边,要评算求值的表达式在右边。

◆ 变量不需用要在指定之前进行宣告。

◆ 除了目前值的型别之外,变量没有固有的型别。

◆ 指定前就被使用的变量有其默认值。

 以上就是PHP学习宝典-第五章的内容,更多相关内容请关注PHP中文网(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 学習メモ: フォーム処理とデータ検証 PHP 学習メモ: フォーム処理とデータ検証 Oct 09, 2023 am 08:52 AM

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

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

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

See all articles