首页 » 建站技术 » PHP 技术 » 浏览内容

PHP 4.0 时尚编程百例 —  实例 52  数组排序的使用


2005-06-03 09:56:13 4,560 0 发表评论 字体: 作者:C.K.
标签: 时尚编程百例

体验版 88 元,个人版 128 元,多用户版 288元个人版160元升级到多用户版。

实例说明

本例将介绍如何用函数对数组进行排序。asort()函数,这个函数将数组的值重新排序,由小至大排列。数组的索引亦跟着值的顺序而变动。当用户在程序中需要重新整理数组值的顺序时,就可以使用这个函数。同时也是用到了其他与数组相关的函数,这些都是在数组操作中必要的基本知识。

编程思路

首先通过 array() 函数构造——个数组型的变量$users:

$users=array("bob"=>"Yobert",
  •            "steve"=>"Btephen",
  •            "jon"=>"Aonathon");
  • 通过循环指令,打印出基本的数组的排列顺序,主要目的是为了比较数组排列后的结果。
    然后通过 asort()函数,对数组进行排列,再次通过循环指令打印出排列后的数组的结果.

    创作步骤

    一、构造一个数组型的变量$users

    数组变量的结果为;

    user[bob]=Yobert,
    user[steve]=Btephen,
    user[jon]=Aonathon.

    二、打印原始数组的排列

    通过打印原始数组的排列,可以比较数组排列函数的作用.

    for(reset($users);$index=key($users);next($users))
  •  {
  •   print("$index:$users&91;$index&93;<br>n");
  •  }
  • 排列打印的时候,用到了有3个较重要的函数 reset(),key(),next().
    reset() 函数将数组的指针重置,将指针改指到数组的第1个元索,传回值的内容也是数组的第1个元
    素;key()函数从当前数组的指针,传回其索引;next()这个函数传回数组下个元素的内部指针,若没有下个元素,则传回 false 值。当然,若是一个空的数组,它也传回 false 值。

    三、使用排序函数,打印排序后的数组

    打印排序后的数组,与先前的打印结果比较.

    四、本例程序代码

    <HTML>
  • <HEAD>
  • <TITLE>数组排序的使用</TITLE>
  • </HEAD>
  • <BODY>
  • <?php
  •        // 构造一个数组变量
  •        $users=array("bob"=>"Yobert",
  •                              "steve"=>"Btephen",
  •                              "jon"=>"Aonathon");
  •        for(reset($users);$index=key($users);next($users))
  •        {
  •                print("$index:$users&91;$index&93;<br>n");
  •        }
  •        print("<hr>");
  •        // 使数组排序
  •       asort($users);
  •       // 打印排序后的数组
  •       for(reset($users);$index=key($users);next($users))
  •       {
  •                print("$index:$users&91;$index&93;<br>n");
  •        }
  • ?>
  • <?php
  •         // 构造一个数组变量
  •         $users=array("bob"=>"Yobert",
  •                               "steve"=>"Btephen",
  •                               "jon"=>"Aonathon");
  •          while(list($key,$value)=each($users))
  •          {
  •                 echo "<pre>$key : $value</pre>";
  •           }
  •           print("<hr>");
  •          // 使数组排序
  •         asort($users);
  •         // 打印排序后的数组
  •        while(list($key,$value)=each($users))
  •        {
  •                echo "<pre>$key : $value</pre>";
  •        }
  • ?>
  • </BODY>
  • </HTML>
    1. 网站统计 Statistics

      • 创建时间: 2005年1月3日 距今4971 天
      • 日志总数: 2461
      • 评论总数: 630
      • 标签总数: 654
      • 链接总数: 273
      • 最后更新: 2017-7-1 18:16:33
      • 您是本站第 13798056 位访客

      广告区 Guǎng Gào