質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Laravel

LaravelとはTaylor Otwellによって開発された、オープンソースなPHPフレームワークです。Laravelはシンプルで表現的なシンタックスを持ち合わせており、ウェブアプリケーション開発の手助けをしてくれます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

解決済

4回答

779閲覧

array_multisortの返り値が1になる

Chandler_Bing

総合スコア673

Laravel

LaravelとはTaylor Otwellによって開発された、オープンソースなPHPフレームワークです。Laravelはシンプルで表現的なシンタックスを持ち合わせており、ウェブアプリケーション開発の手助けをしてくれます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

0グッド

0クリップ

投稿2020/09/10 03:57

編集2020/09/10 04:00

表題の通りです。
以下のサイトを参考にしました。

参考サイト

配列値(ログに吐いたもの)

txt

1[2020-09-10 12:48:12] vbox.INFO: array ( 2 0 => 3 array ( 4 array ( 5 0 => '50000', 6 1 => 'テスト', 7 2 => '太郎', 8 3 => 'テスト', 9 4 => '太郎', 10 ), 11 ), 12 1 => 13 array ( 14 array ( 15 0 => '20000', 16 1 => 'テスト', 17 2 => '太郎', 18 3 => 'テスト', 19 4 => '太郎', 20 ), 21 ), 22 2 => 23 array ( 24 array ( 25 0 => '30000', 26 1 => 'テスト', 27 2 => '太郎', 28 3 => 'テスト', 29 4 => '太郎', 30 ), 31 ), 32 3 => 33 array ( 34 0 => '40000', 35 1 => 'テスト', 36 2 => '太郎', 37 3 => 'テスト', 38 4 => '太郎', 39 ), 40) [] []

上記の配列を、0番目の値で昇順ソートしたいです。

以下のソースを記述しました。
※itemsが上記のログに該当します。

php

1 foreach ($items as $key => $item) { 2 $sort[$key] = $item[0]; 3 } 4 5 Log::info(array_multisort($sort, SORT_ASC, SORT_NUMERIC, $items)); 6

どこがおかしいのかご教授お願い致します。

★追記★
ちなみにやろうとしているのは、$items[0]~$item[3]の入れ替えです。
$items[0]や[2]の中をソートしたいのではありません。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答4

0

array_multisortの返り値が1になる

はい、array_multisortの返り値は成功したかどうかのブール値です。配列ではありません(PHP公式)。

投稿2020/09/10 04:09

maisumakun

総合スコア145123

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ベストアンサー

リファレンス

返り値

成功した場合に TRUE を、失敗した場合に FALSE を返します。

参考にしたというサイトを良く読んでください。

投稿2020/09/10 03:59

ozwk

総合スコア13512

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

まず配列が二重に入れ子になっているは大丈夫?
ソートは配列自体を変更する関数です

投稿2020/09/10 04:06

yambejp

総合スコア114583

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

yambejp

2020/09/10 04:06

<?PHP $a=[ [[0 => '50000',1 => 'テスト',2 => '太郎',3 => 'テスト',4 => '太郎',]], [[0 => '20000',1 => 'テスト',2 => '太郎',3 => 'テスト',4 => '太郎',]], [[0 => '30000',1 => 'テスト',2 => '太郎',3 => 'テスト',4 => '太郎',]], [[0 => '40000',1 => 'テスト',2 => '太郎',3 => 'テスト',4 => '太郎',]], ]; usort($a,function($x,$y){ return $x[0][0]==$y[0][0]?0:$x[0][0]-$y[0][0]; }); print_r($a);
guest

0

php

1foreach ($items as $key => $item) { 2 $sort[$key] = $item[0]; 3} 4 5array_multisort($sort, SORT_ASC, SORT_NUMERIC, $items); 6 7Log::info($items);

投稿2020/09/10 04:01

phper.k

総合スコア3923

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問