$grade = array("name" => array("Zhang San", "Li Si", "Wang Wu","Zhao Liu", "Liu Qi"));
array_multisort($grade["name"], SORT_STRING, SORT_ASC);
print_r($grade);上面数组如何输出下面格式:<div>
<ul>
<span>L</span>
<li>Li Si</li>
<li>Liu Qi</li>
</ul>
</div><div>
<ul>
<span>W</span>
<li>Wang Wu</li>
</ul>
</div>
<div>
<ul>
<span>Z</span>
<li>Zhang San</li>
<li>Zhao Liu</li>
</ul>
</div>

解决方案 »

  1.   

    $grade = array("name" => array("Zhang San", "Li Si", "Wang Wu","Zhao Liu", "Liu Qi"));
    foreach($grade["name"] as $v) $r[$v{0}][] = $v;
    array_multisort(array_keys($r), SORT_STRING, SORT_ASC, $r);
    print_r($r);foreach($r as $k=>$c) {
      echo "<div>" . PHP_EOL;
      echo "<ul>" . PHP_EOL;
      echo "<span>$k</span>" . PHP_EOL;
      foreach($c as $v) {
        echo "<li>$v</li>" . PHP_EOL;
      }
      echo "</ul>" . PHP_EOL;
      echo "</div>" . PHP_EOL;
    }
    <div>
    <ul>
    <span>L</span>
    <li>Li Si</li>
    <li>Liu Qi</li>
    </ul>
    </div>
    <div>
    <ul>
    <span>W</span>
    <li>Wang Wu</li>
    </ul>
    </div>
    <div>
    <ul>
    <span>Z</span>
    <li>Zhang San</li>
    <li>Zhao Liu</li>
    </ul>
    </div>