1. ホーム
  2. php

[解決済み] リファレンス - このシンボルはPHPで何を意味するのですか?

2022-04-14 12:48:48

質問

これは何ですか?

これは、PHPの構文について時々出てくる質問を集めたものです。ここはコミュニティWikiでもあるので、誰でもこのリストのメンテナンスに参加することができます。

これはなぜ?

以前は、演算子やその他の構文トークンに関する質問を見つけるのは困難でした¹。

主なアイデアは、Stack Overflowにある既存の質問へのリンクを持つことで、PHPマニュアルから内容をコピーするのではなく、それらを参照しやすくすることです。

注)2013年1月より、スタックオーバーフローの は特殊文字に対応しています . 検索キーワードを引用符で囲むだけで、例えば [php] "==" vs "==="

ここで何をすればいいのでしょうか?

このような質問をして、誰かからここを指された方は、以下の特殊な構文を見つけてください。のリンク先のページは PHPマニュアル とリンクされた質問が、あなたの質問に答えてくれるでしょう。その場合、その答えにupvoteすることが推奨されます。このリストは、他の人が提供したヘルプの代用品として意図されているわけではありません。

リスト

特定のトークンが以下にリストされていない場合、そのトークンは パーサトークン一覧 .


& ビット演算子 または 参考文献


=& 参考文献


&= ビット演算子


&& 論理演算子


% 算術演算子


!! 論理演算子


@ エラー制御演算子


?: 三項演算子


?? Null Coalesce Operator(ヌルコアレス演算子 (PHP 7以降)


?string ?int ?array ?bool ?float Nullableな戻り値の型宣言 (PHP 7.1 以降)


: 制御構造の代替構文 , 三項演算子 , 戻り値型宣言


:: スコープ解決演算子


\ 名前空間


-> クラスとオブジェクト


=> 配列


^ ビット演算子


>> ビット演算子


<< ビット演算子


<<< Heredoc または Nowdoc


= 代入演算子


== 比較演算子


=== 比較演算子


!== 比較演算子


!= 比較演算子


<> 比較演算子


<=> 比較演算子 (PHP 7.0 以降)


| ビット演算子


|| 論理演算子


~ ビット演算子


+ 算術演算子 , 配列演算子


+= そして -= 代入演算子


++ そして -- インクリメント/デクリメント演算子


.= 代入演算子


. 文字列演算子


, 関数の引数

, 変数宣言


$$ 変数 Variables


` 実行演算子


<?= ショートオープンタグ


[] 配列 (PHP 5.4 以降の短い構文)


<? 開始・終了タグ


... 引数の展開 (PHP 5.6 以降)


** 指数関数 (PHP 5.6 以降)


# 一行のシェル風コメント


?-> NullSafe オペレータコール (PHP 8.0 以降)


解決方法は?

インクリメント/デクリメントオペレーター

++ インクリメント演算子

-- デクリメント演算子

Example    Name              Effect
---------------------------------------------------------------------
++$a       Pre-increment     Increments $a by one, then returns $a.
$a++       Post-increment    Returns $a, then increments $a by one.
--$a       Pre-decrement     Decrements $a by one, then returns $a.
$a--       Post-decrement    Returns $a, then decrements $a by one.

これらは、変数の前でも後でもよい。

変数の前に置くと、インクリメント/デクリメント操作が変数に行われる 最初 を指定し、その結果を返します。変数の後に置かれた場合、その変数は 最初 が返され、その後、インクリメント/デクリメント操作が行われる。

例えば

$apples = 10;
for ($i = 0; $i < 10; ++$i) {
    echo 'I have ' . $apples-- . " apples. I just ate one.\n";
}

ライブの例

上記の場合 ++$i を使用した方が速いからです。 $i++ も同じ結果になります。

プリインクリメントは、変数を実際にインクリメントし、その後に結果を「返す」ので、少し速くなります。ポストインクリメントでは、特別な変数を作成して、そこに最初の変数の値をコピーし、最初の変数が使用された後に、その値を2番目の変数に置き換えます。

ただし $apples-- というのも、まず、現在のリンゴの数を表示したいので では から1を引きたい。

PHPでは、文字をインクリメントすることもできます。

$i = "a";
while ($i < "c") {
    echo $i++;
}

一旦 z に到達しました。 aa が次、といった具合です。

なお、文字変数はインクリメントすることはできてもデクリメントすることはできませんし、それでもプレーンなASCII文字(a-zとA-Z)しかサポートされていないことに注意してください。


スタックオーバーフローの投稿