繁体   English   中英

按字母顺序遍历php数组

[英]loop through php array alphabetically

我有一个遍历数据的PHP循环,我希望能够按字母顺序回显所有这些数据。

我目前使用数组:

$output[]=array();
foreach($WHM_Servers as $whm) {
    foreach($server->list_accounts() as $ret) {
            $output[]= '<tr class="notfirst">
            <td>'.$ret["domain"].'</td>
            <td>'.$ret["user"].'</td>
            <td>'.CompanyInfoLookup($result["customer"], 'company').'</td>
            <td>'.$ret["startdate"].'</td>
            <td>'.$ret["starttime"].'</td>
            <td>'.$ret["disklimit"].'</td>
            <td>'.$ret["diskused"].'</td>
            </tr>';
    }
}

我能够在数组中添加一个键,然后从键中按字母顺序回显数组

为此,我选择了几种不同的方式来编写用户定义的排序函数。

$accounts = array();
$accounts[]['name'] = "Tom";
$accounts[]['name'] = "Frank";
$accounts[]['name'] = "Zed";
$accounts[]['name'] = "Aaron";

function compareNames($a, $b){
    return strcmp($a['name'], $b['name']);
}

usort($accounts, "compareNames");

var_dump($accounts);

输出:

array(4) {
  [0]=>
  array(1) {
    ["name"]=>
    string(5) "Aaron"
  }
  [1]=>
  array(1) {
    ["name"]=>
    string(5) "Frank"
  }
  [2]=>
  array(1) {
    ["name"]=>
    string(3) "Tom"
  }
  [3]=>
  array(1) {
    ["name"]=>
    string(3) "Zed"
  }
}

这是一个独立的示例。 要将其应用于您的示例,您需要存储数据: $accounts = $server->list_accounts() ,对其进行排序: usort($accounts, "compareNames"); ,然后将其传递到您的循环中: foreach($accounts as $ret) {

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM