戻る

複数の返り値を持つ関数(参考)

一般的なユーザ定義関数では、返り値になるのは1つの値や配列だけです。しかし、参照渡しの特性を利用すると、複数の値を返り値として取得できるようになります。この例では、4つの変数を参照渡しでユーザ定義関数に渡しています。ユーザ定義関数内で処理された計算結果は、呼び出し側の変数にそのまま反映されており、あたかも4つの返り値を得たように処理されます。

PHP

<?php
header("Content-type: text/html; charset=utf-8");
 
function testfunc(&$data1, &$data2, &$data3, &$data4){
	
	//各引数に対して演算
	$data1 += 100;
	$data2 -= 5;
	$data3 *= 3;
	$data4 /= 8;
}

$data1 = 10;
$data2 = 20;
$data3 = 30;
$data4 = 40;

//関数実行前の各変数値を出力
echo "【関数実行前の変数値】<br>";
echo "data1 → " . $data1 . "<br>";
echo "data2 → " . $data2 . "<br>";
echo "data3 → " . $data3 . "<br>";
echo "data4 → " . $data4 . "<br>";
echo "<br>";

//ユーザ定義関数を呼び出し
testfunc($data1, $data2, $data3, $data4);

//関数実行後の各変数値を出力
echo "【関数実行後の変数値】<br>";
echo "data1 → " . $data1 . "<br>";
echo "data2 → " . $data2 . "<br>";
echo "data3 → " . $data3 . "<br>";
echo "data4 → " . $data4 . "<br>";
echo "<br>";

?>

inserted by FC2 system