ホームページ  >  記事  >  バックエンド開発  >  PHP代入演算子

PHP代入演算子

伊谢尔伦
伊谢尔伦オリジナル
2016-11-24 13:35:221514ブラウズ

基本的な代入演算子は「=」です。最初は「等しい」と思うかもしれませんが、そうではありません。これは実際には、右側の式の値を左側のオペランドに代入することを意味します。

代入演算式の値が代入された値になります。つまり、「$a = 3」の値は 3 になります。このようにして、いくつかのトリックを行うことができます:

<?php
$a = ($b = 4) + 5; // $a 现在成了 9,而 $b 成了 4。
?>

配列の場合、「=>」演算子を使用して名前付きキーに値を割り当てます。この演算子は、他の代入演算子と同じ優先順位を持ちます。

基本的な代入演算子に加えて、すべての二項算術演算子、配列セット演算子、および文字列演算子に適した「結合演算子」があり、式でその値を使用し、式の結果を結合することができます。例:

<?php
$a = 3;
$a += 5; // sets $a to 8, as if we had said: $a = $a + 5;
$b = "Hello ";
$b .= "There!"; // sets $b to "Hello There!", just like $b = $b . "There!";
?>

代入操作では、元の変数の値が新しい変数にコピーされるため (値による代入)、一方を変更しても他方には影響しないことに注意してください。これは、密なループ内の大きな配列などの一部の値をコピーするのにも適しています。

PHP の通常の値渡しによる代入動作には例外があり、オブジェクトが見つかった場合、コピーに clone キーワードが明示的に使用されない限り、PHP 5 では参照によって割り当てられます。

参照の割り当て

PHP は、「$var = &$othervar;」構文を使用した参照の割り当てをサポートしています。参照による代入は、両方の変数が同じデータを指し、何もコピーされないことを意味します。

例 #1 参照割り当て

<?php
$a = 3;
$b = &$a; // $b 是 $a 的引用
print "$a\n"; // 输出 3
print "$b\n"; // 输出 3
$a = 4; // 修改 $a
print "$a\n"; // 输出 4
print "$b\n"; // 也输出 4,因为 $b 是 $a 的引用,因此也被改变
?>

PHP 5 以降、new 演算子は自動的に参照を返すため、PHP 5.3 以降のバージョンでは new の結果の参照割り当てにより E_DEPRECATED エラー メッセージが発行されます。 E_STRICT エラー メッセージ。

たとえば、次のコードは警告を生成します:

<?php
class C {}
/* The following line generates the following error message:
* Deprecated: Assigning the return value of new by reference is deprecated in...
*/
$o = &new C;
?>


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