Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/248.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在PHP表中对多维数组进行排序_Php_Html_Css - Fatal编程技术网

在PHP表中对多维数组进行排序

在PHP表中对多维数组进行排序,php,html,css,Php,Html,Css,我只想对表上的“Name”值进行排序,但它似乎不起作用 $fruits = array( array( 'image' => '<img class="img" src="papaya.jpg">', 'name' => 'Papaya', 'description'=> 'Color: Yellow', ), array( 'image'

我只想对表上的“Name”值进行排序,但它似乎不起作用

$fruits = array(
      array(
        'image' => '<img class="img" src="papaya.jpg">',
        'name' => 'Papaya',
        'description'=> 'Color: Yellow',
      ),

  array(
    'image' => '<img class="img" src="blueberry.jpg">',
    'name' => 'Blueberry',
    'description'=> 'Color: Blue',
  ),

  array(
    'image' => '<img class="img" src="orange.jpg">',
    'name' => 'Orange',
    'description'=> 'Color: Orange',
  ),
);
array_multisort($fruits['name'], SORT_ASC);
$fruits=数组(
排列(
'图像'=>'',
'名称'=>'木瓜',
'说明'=>'颜色:黄色',
),
排列(
'图像'=>'',
“名称”=>“蓝莓”,
'说明'=>'颜色:蓝色',
),
排列(
'图像'=>'',
“名称”=>“橙色”,
'说明'=>'颜色:橙色',
),
);
数组_multisort($fruits['name'],SORT_ASC);
我希望输出如下:

形象 名称 描述 照片 蓝莓 颜色:蓝色 照片 橙色 颜色:橙色 照片 番木瓜 颜色:黄色
尝试将
usort
函数与适当的回调函数一起使用。你可以这样做

$fruits = array(
    array(
        'image' => '<img class="img" src="papaya.jpg">',
        'name' => 'Papaya',
        'description' => 'Color: Yellow',
    ),

    array(
        'image' => '<img class="img" src="blueberry.jpg">',
        'name' => 'Blueberry',
        'description' => 'Color: Blue',
    ),

    array(
        'image' => '<img class="img" src="orange.jpg">',
        'name' => 'Orange',
        'description' => 'Color: Orange',
    ),
);

function cmp($a, $b)
{
    return strcmp($a["name"], $b["name"]);
}


usort($fruits, "cmp");
$fruits=数组(
排列(
'图像'=>'',
'名称'=>'木瓜',
'说明'=>'颜色:黄色',
),
排列(
'图像'=>'',
“名称”=>“蓝莓”,
'说明'=>'颜色:蓝色',
),
排列(
'图像'=>'',
“名称”=>“橙色”,
'说明'=>'颜色:橙色',
),
);
功能cmp($a$b)
{
返回strcmp($a[“name”],$b[“name”]);
}
usort(水果,cmp);

您是否尝试过将
usort
与自定义回调一起使用?这节省了我很多时间。非常感谢!:)