dポイントプレゼントキャンペーン実施中!

いつもお世話になります。
連想配列をarray_multisort()でソートしようとしています。
php5のサーバでは思うように動作するのですが、
php4のサーバでは、ソートされません。

print_r($ary);

Array ( [BuID] => 11
[BuName] => aaaa
[yymmdd] => 080507
[DateDisp] => 08年05月07日(水)
[DateType] => 1210086000
[TaikaiName] => AAAA
[HRef] =>
[AnkName] => )

Array ( [BuID] => 12
[BuName] => bbbb
[yymmdd] => 080822
[DateDisp] => 08年08月22日(金)
[DateType] => 1219330800
[TaikaiName] => BBBBBBBB
[HRef] =>
[AnkName] => )
・・・・・・・・・・・・・・・・・
・・・・・・・・・・・・・・・・・
の様な連想配列をyymmddでソートしようとしています。
php5.2.6だと、
foreach($ary as $key => $row){
$yymmdd[$key] = $row['yymmdd'];
}
array_multisort($yymmdd,SORT_DESC,$ary);
で、$aryにyymmddで並び替えられた配列が入ります。

しかし、php4.2.2では、ソートされず、もとの配列がそのまま$aryに入ってしまいます。

array_multisort()は、phpのバージョンによって動作が異なるような記載もありません。
どなたかわかる方見えましたらよろしくお願いいたします。

A 回答 (1件)

バグみたいですね・・・


リファレンス渡しをすればごまかせるようです。
ぐぐればPHP4.3でも動かないという報告がヒットします。
私のところにあるPHP4.4の環境では問題なさそうです。

この回答への補足

とても役に立ちました。ありがとうございました。

補足日時:2008/09/03 05:32
    • good
    • 0
この回答へのお礼

yambejpさん、お早うございます。
早速レスありがとうございます。
そうですか、バグみたいですか。
どうもありがとうございます。

お礼日時:2008/08/27 06:18

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!