メイントピックは、PHP 文字列
での変数拡張システムです。PHP
で使用できる変数と定数間の変換。
で式を作成する方法。 php と、式
を構築するために必要な演算子。言語
で使用可能な制御構造の使用。1 入力文字列の詳細
コードをコピー コードは次のとおりです。
$hour = 16;< ?php $a = array("a" => "リンゴ", "b" => "バナナ"); $b = array("a" => "ナシ", " b" = > "イチゴ", "c" => "チェリー"); $c = $a $b; // $a と $b の結合
echo "$a と $b の結合$b: n";var_dump($c);
$c = $b $a; // $b と $a の結合
echo "$b と $a の結合: n" ;
var_dump($c)>
実行後、このスクリプトは次のように表示されます:
$a と $b の結合: array(3) { ["a"]=> string(5) "apple" ["b"]=> string(6) "バナナ" ["c"]=> string(6) "cherry" } $b と $a の結合: array(3) { ["a"]=> string(4) "pear" " ["b"]=> string(10) "strawberry" ["c"]=> string(6) "cherry" } 2.2.2 第 4 単元では、オブジェクト指向プログラミングでオブジェクトを使用します。 2.2.3 特殊な型と値 NULL は、PHP の特殊な型と値であり、次の要件を満たす場合は null になります。値が割り当てられていません。unset メソッドを使用して明示的に値をクリアします。 リソース: 場合によっては、PHP は、データベースやオペレーティング システム オブジェクトへのハンドルなど、必ずしも PHP から取得されたものではないオブジェクトを処理する必要があります。これらは、リソースの特殊変数と呼ばれます。3
のキャスト 2.3.1 基本
暗黙的なキャストが発生する場合の最も一般的な状況は、
です。文字列を必要とする特定のメソッド - echoprint や文字列連結 (.)
などの特定のメソッドと演算子 必須の型変換を表示: 括弧で囲まれた型プレフィックスを変数 (または式) に追加します。
(int)(interger)
(string) - テキスト文字列に変換します
(オブジェクト) - オブジェクト
に変換します 2.3.2 特殊キャスト
整数に変換
(int) 4.999
注: null は常に整数値 0 に変換されます。
float Points に変換
(float)true=1.0
変換の結果浮動小数点値への配列、オブジェクト、またはリソースは未定義です。この新しい変換を試みないか、そのような変換の結果を信頼しないでください
文字列に変換
は型変換演算子 (文字列) を使用するか、strval を呼び出すことができます変数を文字列に変換します。
ブール値 true は文字列 1 に変換され、false は空の文字列 ("") に変換されます。
null は空の文字列 ('") に変換されます。
配列 型変換 (配列) または関数 arrayr を使用して、変数または式を配列に変換できます
Null およびその他の未設定の変数は 0 に変換されます 要素の空の配列をオブジェクトに変換します
を使用できます変数または式をオブジェクトに変換する型変換 (オブジェクト)
2.3.3 便利なキャスト関数
is_type()
.is_integer,.is_float,.is_bool,is_null ,.is_object。特定の変数が適切な型に属しているかどうかを示すブール型を返します。
gettype() は、PHP が現在どのような型であると認識しているかを示す非常に便利なルーチンです。これはお勧めできません。この変換関数は 2 つのパラメータで使用します: 変換される変数と、文字列を表す変換先の型
.4 変数と定数
2.4.1 定数の定義
PHP プログラムでは、言語構造定義では定数を定義しますが、定数名は文字 $ で始まり、その値は整数、浮動小数点数、文字列、ブール値などの特定の型のみにすることができます。
2.4.2 値による変数と基準による変数参照
デフォルトでは、ほとんどの変数とすべての定数は値によって割り当てられます。ある変数の値が別の変数に代入されると、その値がコピーされます。このメソッドは、オブジェクトを除くすべての型に適用されます。
オブジェクト変数とリソースの場合、コピーされるすべてのコンテンツは基になるオブジェクトまたはリソースのハンドルですが、操作の基になるオブジェクトは同じです。
変数の値を別の変数に代入するためのもう 1 つのオプションは、参照による代入です。 & プレフィックスを付けて完了です。
$a=123;
$b=&$a;
2.4.3 変数のスコープ
関数レベルの変数、内部的に宣言された変数は、この関数内でのみ有効です。
関数の外で宣言された変数
スーパーグローバル変数
2.4.4 変数の有効期間
同じスクリプトを実行しても、異なるスクリプトを実行しても、PHP は呼び出しの間に何も記憶しません。
2.4.5 事前定義された変数
php は、動作環境に関する情報を提供する多くの事前定義された変数を提供します。例:
$GLOBALS - 実行環境内でグローバルに使用可能な変数が含まれます。すべての変数への参照
$_SERVER - スクリプトを取り巻く環境に関する情報
$_SESSION、$_COOKIE - 訪問者の管理と「Cookie」と呼ばれる保存方法に関する情報が含まれています
$_REQUEST - が含まれています$_post、$_GET、$_session 配列
$_ENV - PHP 言語エンジンが配置されているプロセスの環境変数が含まれます。配列のキーは環境変数の名前です。
$php_errormsg - 現在のスクリプトの実行時に PHP 言語エンジンによって生成された最新のエラー メッセージを保存します。
.5 式と演算子
2.5.1 演算子: 組み合わせ式
代入:
算術演算子
例名 結果
-$a $a の負の値を否定します。
$a $b は $a と $b の合計を加算します。
$a - $b は、$a と $b の差を引きます。
$a * $b は、$a と $b の積を乗算します。
$a / $b 除算 $a を $b で割った商。
$a % $b $a を $b で割った余り。
比較演算子
例 名前 結果 $a が $b と等しい場合、
$a == $b は TRUE と等しくなります。
$a === $b は、$a が $b に等しく、それらが同じ型である場合に合同 TRUE です。 (PHP 4 で導入)
$a != $b not equal $a が $b と等しくない場合は TRUE。
$a <> $b が等しくない $a が $b と等しくない場合は TRUE。
$a !== $b non-congruent $a が $b と等しくない場合、またはそれらの型が異なる場合は TRUE。 (PHP 4 で導入) $a が厳密に $b より小さい場合、
$a < $b は TRUE より小さくなります。
$a > $a が厳密に $b である場合、$b は TRUE より大きくなります。
$a $a >= $a が $b 以上の場合、$b は TRUE 以上です。
論理演算子
例 名前 結果
$a と $b $a と $b が両方とも TRUE の場合、And (論理積) TRUE。
$a または $b $a または $b のいずれかが TRUE の場合、OR (論理和) TRUE。
$a xor $b Xor (論理排他的論理和) $a または $b のどちらかが TRUE で、両方が TRUE でない場合は TRUE。
$a $a が TRUE でない場合、$a は TRUE ではありません。
$a&& $b $a と $b の両方が TRUE の場合、And (論理積) TRUE。
$a || $b $a または $b のいずれかが TRUE の場合、OR (論理和) TRUE。
ビット単位の演算子
演算子名 結果
$a & $b And (ビット単位の AND) は、両方とも 1 である $a と $b のビットを 1 に設定します。
$a|| $b Or (ビット単位の OR) は、$a または $b のビットを 1 に設定します。
xor ^ $b Xor (ビット単位の排他的論理和) は、$a と $b の異なるビットを 1 に設定します。
Not $a Not (ビット単位の not) $a のビットを 0 から 1 に設定し、その逆も同様です。
$a << $b Shift left $a のビットを左に $b 回移動します (各移動は「2 を掛ける」ことを意味します)。
$a >> $b 右にシフト $a のビットを右に $b 回移動します (各移動は「2 で割る」ことを意味します)。
文字列演算子
連結演算子。2 つの文字列を操作し、その 2 つを連結した単一の文字列を返します。
配列演算子
例 名前 結果
$a $b Union of $a と $b。
$a と $b が同じキーと値のペアを持つ場合、$a == $b は TRUE になります。
$a === $b congruent $a と $b が同じキー/値ペアを持ち、同じ順序と型である場合に TRUE。
$a != $b は等しくありません $a が $b と等しくない場合、TRUE になります。
$a <> $a が $b と等しくない場合、$b は TRUE と等しくなりません。
$a !== $b は等しくない $a が $b と等しくない場合は TRUE。
その他の演算子
自動インクリメント演算子と自動デクリメント演算子
$b=$a;
$c= $a; c=12,a=12;
$d=$a--;
$e=--$a;
@a という演算子があり、これは PHP に特定の関数呼び出しの失敗を無視するように指示します。
最後のオペレーター - シェルコマンド実行者。この目的のために、コマンドが実行のためにシェルに渡されるように、コマンドをバックティック (`) で囲む必要があります。ただし、これによりセキュリティが確保されます。
2.5.2 式と演算子を組み合わせるプロセス
方向演算子の組み合わせに関する追加情報
非結合クローン new clone および new
Left [array()
非結合- - インクリメント/デクリメント演算子
非結合~ - (int) (float) (string) (array) (object) (bool) @ type
非結合instanceof type
右結合論理演算子!
Left * / % 算術演算子
Left - . 算術演算子および文字列演算子
非結合 <= > > 比較演算子
非結合 == != === !== 比較演算子
left & ビット演算子および参照
left ^ ビット演算子
left &&論理演算子
left || 論理演算子
left ? = = -= *= /= .= %= &= = ^= |代入演算子
left および論理演算子
left xor 論理演算子
left または論理演算子
left、多くの場所で使用されます
.6 制御構造
2.6.1 if ステートメント
1. if (expr)
ステートメント
else
2. elseif/else if 2.6.2 switch ステートメント
コードをコピー
if ($a == 5):
echo "a == 5";echo "..."; 🎜>elseif ($a == 6):
echo "a は 6";
echo "!!!";
else:
echo "a は 5 でも 6 でもありません"; 🎜>endif;
?>
switch ステートメントは、同じ式を使用した一連の IF ステートメントに似ています。同じ変数 (または式) をさまざまな値と比較し、どの値と等しいかに応じて異なるコードを実行する必要がある状況は数多くあります。これはまさに switch ステートメントの目的です。
コードをコピー
if ($i == 0) { echo "i は 0 に等しい"; } elseif ($i == 1) {
echo "i は 1 に等しい"; elseif ($i == 2) { echo "i = 2";
switch ($i) {
case 0:
echo "i = 0";
case 1:
echo "i = 1";
case 2:
echo "i = 2";
; 🎜>2.6 .3 while/do ....while ループ
while(expr)
block
do
block
while (expr);
コードをコピーします
コードは次のとおりです:
do {
if ($i < 5) {
echo "私は十分な大きさではありません";
>$i *= $factor;
if ($i <$minimum_limit) {
break;
}
echo "i is ok"; 🎜>} while(0);
?>
2.6.4 for ループ
for(expr1;expr2;expr3)
ブロック
コードは次のとおりです: /* 例 1 */
for ($i = 1; $i echo $i;