今日の人気記事

  1. IPアドレスからホスト名を取得 - gethostbyaddr()
  2. 連想配列
  3. 変数の型を調べる(確認) - gettype()
  4. 区切り文字列を配列に変換 - explode()
  5. for - 繰り返し処理

引数の参照渡し

当ページのリンクには広告が含まれています。

PHPスクリプトの関数などで利用する基本構文「引数の参照渡し」を紹介します。

引数の参照渡し

通常、関数内で変数の値を変更しても、関数外には適用されません。しかし、「引数の参照渡し」を使うと、関数内で変数の値を変更すると、その値が関数外にも適用されるようになります。

function 関数名( &引数変数名 ) {
  // 処理
}

関数の引数を参照渡しする場合は、このように「引数変数名」の前に「&」記号を付けます。

サンプルスクリプト

それでは 実際に「通常の引数」と「参照渡しの引数」をサンプルスクリプトで比較してみましょう。

通常の引数

まずは、通常の引数のサンプルスクリプトです。

<?php
function hoge($a) {
  return ++$a;
}
$b = 1;

echo hoge($b) ."\n";
echo $b ."\n";
?>

実行結果です。

2
1

関数「hoge」に引数「$b」を渡すと関数からの戻り値は「2」になります。しかし参照渡しではないので変数「$b」の値は「1」であることがわかります。

参照渡しの引数

次は、参照渡しの引数のサンプルスクリプトです。

<?php
function piyo(&$a) {
  return ++$a;
}
$b = 1;

echo piyo($b) ."\n";
echo $b ."\n";
?>

実行結果です。

2
2

関数「piyo」に引数「$b」を参照渡しをしています。関数からの戻り値は「2」に、参照渡しなので変数「$b」の値も「2」になることがわかります。

関数 の人気記事

  1. HTML内でPHPスクリプトを実行 - 埋め込み
  2. 簡単なPHPスクリプトを動かしてみよう
  3. ファイルの読み込み
  4. 連想配列
  5. PHPスクリプト - 基本的な記述方法 - 書き方の基本
  6. require、require_once - ファイルの取り込み
  7. 関数の宣言と呼び出し
  8. 配列 - array
  9. 関数の引数にデフォルト値を指定

関連記事(一部広告含む)