PHP 学習の要約変数

不言
不言オリジナル
2018-04-03 16:26:171513ブラウズ

この記事は、PHP 学習における変数に関する知識を共有します。必要な友人はそれを参照してください。

変数識別子

識別子は、PHP における変数の名前です。ルール:

  • 。任意の文字、数字、アンダースコアで構成されますが、数字で始めることはできません

  • 大文字と小文字を厳密に区別します

識別子を科学的に標準化するために、主に次の一般的な命名方法があります:

1. CamelCase

最初の単語は小文字で始まり、後続の各単語の最初の文字が大文字になるか (小さいキャメルケース)、各単語の最初の文字が大文字になります (大きいキャメルケース、パスカル命名法とも呼ばれます)。

$myFirstName = 'jochen'; # 小驼峰法
$MyFirstName = 'jochen'; # 大驼峰法
2. ハンガリー語の命名法

変数名 = 属性 + 型 + オブジェクトの説明。

$sMyFirstName = 'jochen';
3. 下線の命名法

すべての文字は小文字であり、各単語はアンダースコアで区切られています

$my_first_name = 'jochen';

変数の代入

PHP では、変数に値を代入する 2 つの方法、つまり値による代入と参照による代入が提供されています。

最も一般的に使用されるのは、値による代入です。式の値を変数に代入する場合、元の式全体の値がターゲット変数に代入されます。これは、ある変数の値が別の変数に割り当てられている場合、一方の変数の値を変更しても、もう一方の変数には影響を与えないことを意味します。

参照代入は元の変数の内容のエイリアスです。C言語のポインタとは異なりますが、変数の値を変更すると元の変数にも影響します。

$foo = 'jochen'; # 传值赋值
$bar = &$foo;    # 引用赋值

$bar = 'coco';   # $foo、$bar 的值都为 coco

変数の型

変数の型とは、変数に保存できるデータ型を指します。 PHP のデータ型は、スカラー データ型、複合データ型、特殊データ型の 3 種類に分類できます。 PHP スカラー データ型には、boolean (Boolean)integer (整数)float (浮動小数点、double とも呼ばれます)string が含まれます。 (string)、複合データ型には、array (array)object (object)、および callable (callable) が含まれます。データ型は resource (リソース)NULL (型なし) です。 boolean(布尔型)integer(整型)float(浮点型,也称作 double)string(字符串),复合数据类型有 array(数组)object(对象)callable(可调用),特殊数据类型 resource(资源)NULL(无类型)

PHP 是一种弱类型语言,变量在使用之前并不需要声明类型,且同一变量可以保存多种不同类型的数据。有时,为了判断当前变量的数据类型,我们可以使用以下方法进行判断:

gettype()                 — 获取变量的类型
is_int() 或 is_integer()  — 检测变量是否是整数
is_numeric()              — 检测变量是否为数字或数字字符串
is_float() 或 is_double() — 检测变量是否是浮点型
is_string()               — 检测变量是否是字符串
is_bool()                 — 检测变量是否是布尔型 
is_array()                — 检测变量是否是数组
is_object()               — 检测变量是否是一个对象
is_null()                 — 检测变量是否为 NULL 
is_resource()             — 检测变量是否为资源类型

有时,我们需要强制将某个变量当作某种类型来求值,就要进行类型强制转换:

(int) 或 (integer)  — 转换为整形
(bool) 或 (boolean) — 转换为布尔类型
(float) 或 (double) — 转换为浮点型
(string)            — 转换为字符串
(array)             — 转换为数组
(object)            — 转换为对象
(unset)             — 转换为 NULL

变量作用域

1.超全局变量

由 PHP 预定义的,且在任何脚本的任何作用域中始终可用的一种变量。超全局变量包括:

  • $GLOBALS

  • $_SERVER

  • $_REQUEST

  • $_POST

  • $_GET

  • $_FILES

  • $_ENV

  • $_COOKIE

  • $_SESSION

其中 $GLOBALS 是一个包含了所有全局变量的关联数组,变量的名字就是数组的 key,变量的值就是数组的 value

2.全局变量

在函数外部创建的变量, for 语句 、while 语句、foreach 语句中创建的变量也属于全局变量,其作用域是从创建变量的语句开始到文件的末尾,但在函数内部不可见。需要注意的是:常量一旦被创建,将在全局中可见,同时在函数内部也是可见的。

3.局部变量

在函数内部创建的变量,其作用域是从创建变量的语句开始到函数末尾。需要注意的是:如果函数内部的变量与外部的全局变量名称相同时,内部变量会覆盖外部变量。另外,在函数内部创建的静态变量是无法在函数外部使用的。

requireinclude 不影响作用域,即如果这两个语句作用于函数内部,变量具有局部作用域;如果作用于函数外部,变量具有全局作用域。

用关键字 global

PHP は弱い型指定の言語であり、変数は使用前に型を宣言する必要がなく、同じ変数に複数の異なる型のデータを格納できます。場合によっては、現在の変数のデータ型を決定するために、次のメソッドを使用して決定できます:
rrreee

場合によっては、変数を強制的に特定の型として評価する必要があり、型キャストを実行する必要があります:

rrreee

変数スコープ1. スーパーグローバル変数

PHP によって事前定義され、あらゆるスクリプトのあらゆるスコープで常に使用できる変数。スーパーグローバル変数には以下が含まれます:

🎜🎜$GLOBALS🎜🎜🎜🎜$_SERVER🎜🎜🎜🎜$_REQUEST🎜🎜🎜🎜 $_POST🎜🎜🎜🎜$_GET🎜🎜🎜🎜$_FILES🎜🎜🎜🎜$_ENV🎜🎜🎜🎜 $_COOKIE🎜🎜🎜🎜$_SESSION🎜🎜🎜🎜 ここで、$GLOBALS はすべてのグローバル変数を含む連想配列であり、変数の名前です。は配列の key であり、変数の値は配列の value です。 🎜🎜2. グローバル変数🎜🎜関数の外で作成された変数、for ステートメント、while ステートメント、および foreach ステートメントで作成された変数も属します。グローバル変数のスコープは、変数を作成するステートメントからファイルの最後までですが、関数内では表示されません。定数が作成されると、その定数はグローバルに表示され、関数内でも表示されることに注意してください。 🎜🎜3. ローカル変数🎜🎜関数内で作成される変数。そのスコープは、変数を作成するステートメントの先頭から関数の最後までです。関数内の変数が外部グローバル変数と同じ名前である場合、内部変数が外部変数を上書きすることに注意してください。また、関数内で作成した静的変数は関数外では使用できません。 🎜
requireinclude はスコープに影響しません。つまり、これら 2 つのステートメントが関数内で動作する場合、関数の外で動作する場合、変数はローカル スコープになります。関数、変数はグローバル スコープを持ちます。 🎜キーワード global を使用して変数を宣言すると、関数内で定義または使用される変数がグローバル スコープを持つことを手動で指定できます。 🎜🎜🎜関連する推奨事項: 🎜🎜🎜PHP 学習概要文字列🎜🎜🎜🎜🎜

以上がPHP 学習の要約変数の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
前の記事:ApiDocの使用次の記事:ApiDocの使用