php =& イコールアンパサンド で参照渡し

公開日: : php

php-logo

意味

変数やオブジェクトなどを参照渡しする。

# 下記はどちらも同じ挙動になります
$result =& $value;
$result = &$value;

qiita

 

php7では利用不可

new 文の結果を参照渡しで変数に代入することができなくなりました。 by reference:

phpマニュアル

 

蛇足

古いソースで

$a =& new classC();

みたいなことしてたけど意味あるのか?

いろんな場所からインスタンス化されて、プロパティが変化しても同じ値を参照できるということかな…

でも上記のqiitaだと

オブジェクトは元々参照型なので、「&」をつけなくても参照されます。

って書いてあるけど、、、php7の話であってphp5以前だとそうではないのかな…

 

追記

はい遺物だと、すべてのオブジェクトは、PHP 5で参照によって渡されます– RageZ 25 10月。11

php5ではすでに参照型。php4ではそうではないみたい。

 

PHP5より前は、PHPのクラスからオブジェクトを作成すると、そのオブジェクトは値によって他の変数に渡されていました。他のほとんどのオブジェクト指向(Java、C#など)言語で標準となっているように、オブジェクトは参照ではありませんでした。

stackoverrun

 

とうことはphp7化する際には「&」を外すだけでいいな。

 

スッキリ。

Googleアドセンスレスポンシブ

関連記事

php-logo

php アットマーク

意味 @マークをつけると、エラーを表示させない。 どこで使うか 関数とか変数の頭につける。

記事を読む

php-logo

php 7.4をソースからインストール時にchecking for sqlite3 > 3.7.4… no configure: error: Package requirements (sqlite3 > 3.7.4) were not met:

原因 sqliteのパッケージがなかったため。   対応 インストールする。

記事を読む

php-logo

php require_onceで相対パスで指定する

  相対パスで指定する書き方 理由 require_onceしたファイル先で

記事を読む

php-logo

php require_onceでDocumentRootからのパスで指定する

やり方 相対パスで書く場合 こちら

記事を読む

php-logo

phpのコンストラクタ

コンストラクタとは classがnewされた瞬間に実行されるfunction。 php3、p

記事を読む

php-logo

phpでOracleにセッション張りっぱなしになる

Oraの画像がでかい…笑 事象 仕事で相談を受けた。 「Webサイトへの同時アクセス数が大

記事を読む

php-logo

phpで PHP Parse error: syntax error, unexpected ‘$’, expecting ‘)’ の原因

エラーメッセージの意味 簡単に説明すると ")"付近(直前)のソースコードに、想定外の

記事を読む

php-logo

php parent 親クラスのプロパティやメソッドにアクセスする

子クラスで使う すると親クラスのプロパティやメソッドにアクセスできる 例:pare

記事を読む

php-logo

php7の互換性チェック

qiitaの記事のとおりでうまくいった。(ありがとうございます!)   通すPat

記事を読む

php-logo

php7 Oracleに接続 sourceからインストール

phpからORACLEのDBに接続するには2つのソフトウェアが必要 Instant Cl

記事を読む

Googleアドセンスレスポンシブ

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

PAGE TOP ↑