忍者ブログ
プログラムとちょっとショップとかの紹介とか、いろいろと載せておきます。
[1190] [1188] [1187] [1185] [1184] [1183] [1180] [1179] [1178] [1177] [1176]
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

便利な関数を発見。

array_multisort

参考:多次元配列をソートする(PHP)

書いてある通りにやったのに、うまくいかない…。
追記とまったく同じことになったので、回答をメモ。



255nobodyさん:2006/02/09(木) 18:52:25 ID:???
$sort_key = フィールド名;
$sort_dir = ソート方向
$sort_type = 比較方法
$list = 処理対象フールド

こんな風な変数を作っておいてから
array_multisort($sort_key, $sort_dir, $sort_type, $list);
って具合に引数に変数で渡すと、

Warning: array_multisort(): Argument #2 is expected to be an array or a sort flag in~
または Argument #3~ってエラーになります。

$sort_dirのとこは
SORT_ASC(昇順にソート)
SORT_DESC(降順にソート)

$sort_typeのとこは
SORT_REGULAR(普通に比較)
SORT_NUMERIC(数値的に比較)
SORT_STRING(文字列として比較)

などのフラグの文字列そのものを直接、引数のとこに書き込まないとダメなんでしょうか?
フラグの文字列(SORT_DESCとかSORT_NUMERIC)を直接入れるとうまくいきます。
なにかウマい方法がありましたら教えてください。
参考:http://www2.atpages.jp/mirror/2ch/php/php/read.php?key=1139146534&st=201&to=300

原因は
$sort_dir = "SORT_DESC";
と、ダブルクォーテーションやシングルクォーテーションで変数をくくっていたため。
故に、対処法は。

$sort_dir = SORT_DESC;

これでOK。
PR

コメント
ひまうさぎがメモ
ひまうさぎがメモすればよかった?
【2010/04/16 15:11】 NAME[BlogPetのひまうさぎ] WEBLINK[URL] EDIT[]


コメントフォーム
お名前
タイトル
文字色
メールアドレス
URL
コメント
パスワード
  Vodafone絵文字 i-mode絵文字 Ezweb絵文字


忍者ブログ [PR]
ブログ内検索