050-7117-8104 お見積もり

開発者ブログ

2024年9月6日

値渡しと参照渡し比較(PHP&JAVA)

Skrumエンジニアの根岸です。

今回はPHPとJAVAの値渡しと参照渡しについてまとめてみます。
変数へ代入する場合と引数として関数に渡す場合において、デフォルトの挙動が値渡しなのか参照渡しなのかをまとめています。

【PHP】

変数へ代入する場合引数として関数に渡す場合
スカラー型値渡し値渡し
配列値渡し値渡し
オブジェクト参照渡し参照渡し

(※ 参照渡しはPHPの場合、実際にはアドレスではなくエイリアス(変数のID)が渡されている)

【JAVA】

変数へ代入する場合引数として関数に渡す場合
スカラー型値渡し値渡し
配列参照渡し参照渡し
オブジェクト参照渡し参照渡し

(※ 参照渡しはJAVAの場合、厳密には「参照の値渡し」と呼ばれ本来の参照渡しとは少し異なる)

Pagetop