[PHP-users 10334] Re: 関数内での2次元配列の返り値を取得するには?
Naofumi Kondoh
php-users@php.gr.jp
Wed, 25 Sep 2002 11:59:56 +0900
ソフト工房の近藤です。
FUJIMOTO Yoshihiko wrote:
> こんにちは。藤本です。
....略....
> PHP は 4.1.2 です。
>
> 関数内で生成した2次元配列を返り値で返してやるには、どの様に記述すれば
> 良いのでしょうか?。
PHP 4.2.1 ですが、ご要望の通りの事ができます。
どんなエラーになるのでしょうか?。
関数の返信値を print_r で見るとヒントになると思います。
# プログラムコードは、コピー・ペーストで、そのまま実行
# できるように書いて欲しいな。
<?php
$iCountX=2; $iCountY=1;
function sample(){
global $iCountX,$iCountY;
for($ix2=0 ; $ix2 <= $iCountX ; $ix2++){
for($iy2=0 ; $iy2 < $iCountY ; $iy2++){
$HOGE1[$ix2][$iy2]=$ix2*1000+$iy2;
$HOGE2[$ix2][$iy2]=$ix2+$iy2;
}
}
return array($HOGE1,$HOGE2);
}
// $r = sample();
// echo "<pre>"; print_r($r); echo "</pre>";
list($hoge1,$hoge2)=sample();
echo "<pre>"; print_r($hoge1); echo "</pre>";
for($ix2=0 ; $ix2 <= $iCountX ; $ix2++){
for($iy2=0 ; $iy2 < $iCountY ; $iy2++){
echo "hoge1[$ix2][$iy2] = ", $hoge1[$ix2][$iy2] , "<br>";
echo "hoge2[$ix2][$iy2] = ", $hoge1[$ix2][$iy2] , "<br>";
}
}
?>
------------- 実行結果 ------------
Array
(
[0] => Array
(
[0] => 0
)
[1] => Array
(
[0] => 1000
)
[2] => Array
(
[0] => 2000
)
)
hoge1[0][0] = 0
hoge2[0][0] = 0
hoge1[1][0] = 1000
hoge2[1][0] = 1000
hoge1[2][0] = 2000
hoge2[2][0] = 2000
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
(株)ソフト工房 近藤直文 Email: nkon@shonan.ne.jp
http://www.SOFTKOUBOU.co.jp/ http://www.shonan.ne.jp/~nkon/
2002-09-26(木)19:00-21:30 第6回 JPUG 業務アプリ分科会 勉強会
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/