PHP/Data Structure/asort — различия между версиями

Материал из Web эксперт
Перейти к: навигация, поиск
м (1 версия)
 
м (1 версия)
 
(нет различий)

Текущая версия на 07:02, 26 мая 2010

After using asort()to return the array"s elements to their original order

 
<?php 
$nums = array(15, 2.2, -4, 2.3, 0); 
asort($nums); 
printf("<pre>%s</pre>\n", var_export($nums, TRUE)); 
ksort($nums); 
printf("<pre>%s</pre>\n", var_export($nums, TRUE)); 
?>



asort() Constants

 
SORT_REGULAR         Compare the items normally (default).
 
 SORT_NUMERIC         Compare the items as numeric values.
 
 SORT_STRING          Compare the items as string values.
 
<HTML>
<HEAD><TITLE>Sorting Arrays</TITLE></HEAD>
<BODY>
<CENTER>
<H2>Sorting Arrays using the <code>asort()</code> function</H2>
<?php
    $petshack["name"] = array("A", "B", "C", "D", "E");
    $petshack["owner"] = array("J", "A", "C", "A", "H");
    $petshack["weight"] = array(20, 10, 3, 54, 30);
    $petshack["animal"] = array("Dog", "Cat", "Cat", "Dog", "Dog");
    asort($petshack["weight"], SORT_NUMERIC);
?>
<TABLE>
<TR>
    <TD>Pet Name</TD>
    <TD>Pet Owner</TD>
    <TD>Pet Weight</TD>
    <TD>Type of Animal</TD>
</TR>
<?php
    foreach($petshack["weight"] as $key=>$weight) {
        echo "<TR>";
        echo "<TD>{$petshack["name"][$key]}</TD><TD>{$petshack["owner"][$key]} </TD>";
        echo "<TD>{$weight}</TD><TD>{$petshack["animal"][$key]}</TD>";
        echo "</TR>";
    }
?>
</TABLE>
</CENTER>
</BODY>
</HTML>



asort() function: array indexes maintain their original association with the elements.

 
The function"s syntax is: void asort (array array)
<?
    $cities = array ("A", "N", "R", "V", "A");
    asort($cities);
//    for (reset ($cities); $key = key ($cities); next ($cities)) :
  //       print "cities[$key] = $cities[$key] <br>";
  //  endfor;
    print_r($cities);
?>



asort( ) function sorts array by its values while preserving the keys

 
//bool arsort ( array &arr [, int options] )
<?
    $capitalcities["England"] = "London";
    $capitalcities["Wales"] = "Cardiff";
    $capitalcities["Scotland"] = "Edinburgh";
    asort($capitalcities);
    // sorted by value, so Cardiff, Edinburgh, London
?>



asort() function works in the same way as sort() and preserves the array"s original key/value associations.

 
<?php 
$dogs = array("A" => "C", "B" => "D","X" => "Z", "Q" => "T"); 
asort($dogs); 
printf("<pre>%s</pre>\n", var_export($dogs, TRUE)); 
?>



Sorting with asort()

 
<?
$meal = array("breakfast" => "A",
              "lunch" => "B",
              "snack" => "C",
              "dinner" => "D");
print "Before Sorting:\n";
foreach ($meal as $key => $value) {
    print "   \$meal: $key $value\n";
}
asort($meal);
print "After Sorting:\n";
foreach ($meal as $key => $value) {
    print "   \$meal: $key $value\n";
}
?>