2016-12-30 10 views
-2

下にハッシュのPHP配列があります。インデックスに基づいてソートしたい配列はarr [0]、arr [1]、arr [18]、arr[22]のように配置する必要があります。 arr[0],arr[1],arr[22],arr[18]の代わりに。配列内のハッシュではなく、配列インデックスに基づいてソートしたい。どうすればいいの?それは正しく動作しませんでした。PHPインデックスを基にしたハッシュの配列の並べ替え

php > $arr=array(); 
php > $arr[0]['callbacks']=10; 
php > $arr[0]['preview']=11; 
php > $arr[0]['Dialer']=12; 
php > $arr[1]['callbacks']=20; 
php > $arr[1]['preview']=21; 
php > $arr[1]['Dialer']=22; 

php > $arr[22]['callbacks']=210; 
php > $arr[22]['preview']=208; 
php > $arr[22]['Dialer']=222; 
php > $arr[18]['callbacks']=210; 
php > $arr[18]['Dialer']=222; 
php > $arr[18]['preview']=208; 
php > print_r($arr); 
Array 
(
    [0] => Array 
     (
      [callbacks] => 10 
      [preview] => 11 
      [Dialer] => 12 
     ) 

    [1] => Array 
     (
      [callbacks] => 20 
      [preview] => 21 
      [Dialer] => 22 
     ) 

    [22] => Array 
     (
      [callbacks] => 210 
      [preview] => 208 
      [Dialer] => 222 
     ) 

    [18] => Array 
     (
      [callbacks] => 210 
      [Dialer] => 222 
      [preview] => 208 
     ) 

) 
php > 

答えて

2

あなたはそれが以下のようなキーに応じて、あなたの配列をソートしますksort() PHPの機能を試してみない理由ksort($arr);

+0

ありがとうございます。 – Arav

1

@Aravでそれを並べ替えることができます:それは応じて並べ替えられます

<?php 
    $arr=array(); 
    $arr[0]['callbacks']=10; 
    $arr[0]['preview']=11; 
    $arr[0]['Dialer']=12; 
    $arr[1]['callbacks']=20; 
    $arr[1]['preview']=21; 
    $arr[1]['Dialer']=22; 

    $arr[22]['callbacks']=210; 
    $arr[22]['preview']=208; 
    $arr[22]['Dialer']=222; 
    $arr[18]['callbacks']=210; 
    $arr[18]['Dialer']=222; 
    $arr[18]['preview']=208; 
    ksort($arr); 
    print_r($arr); 

?> 

昇順でキー入力し、降順で使用できるようにする場合krsort()function (y)

+1

情報ありがとうございました – Arav

関連する問題