PHP 数组(第八篇)

数组能够在单个变量中存储多个值:

<?php
$cars=array("Volvo","BMW","Toyota");
echo "I like " . $cars[0] . ", " . $cars[1] . " and " . $cars[2] . ".";
?>

数组是什么?

数组是一个能在单个变量中存储多个值的特殊变量。

在 PHP 中创建数组

在 PHP 中,array() 函数用于创建数组:
在 PHP 中,有三种类型的数组:
1、数值数组 - 带有数字 ID 键的数组
2、关联数组 - 带有指定的键的数组,每个键关联一个值
3、多维数组 - 包含一个或多个数组的数组

获取数组的长度 - count() 函数

count() 函数用于返回数组的长度(元素的数量):

<?php
$cars=array("Volvo","BMW","Toyota");
echo count($cars);
?>

遍历数值数组

遍历并打印数值数组中的所有值,您可以使用 for 循环,如下所示:

<?php
$cars=array("Volvo","BMW","Toyota");
$arrlength=count($cars);

for($x=0;$x<$arrlength;$x++)
{
    echo $cars[$x];
    echo "<br>";
}
?>

PHP 关联数组

关联数组是使用您分配给数组的指定的键的数组。
这里有两种创建关联数组的方法:

$age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43");

第一次看到这个关联数组,原来就是键值对形式。

$age['Peter']="35";
$age['Ben']="37";
$age['Joe']="43"; 
<?php
$age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43");
echo "Peter is " . $age['Peter'] . " years old.";
?>

遍历关联数组

遍历并打印关联数组中的所有值,您可以使用 foreach 循环,如下所示:

foreach有点想迭代器,等后面章节进行总结:这边有个疑问就先留着?
等学到循环语句后就明白了

<?php
$age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43");

foreach($age as $x=>$x_value)
{
    echo "Key=" . $x . ", Value=" . $x_value;
    echo "<br>";
}
?>

PHP 数组排序

sort() - 对数组进行升序排列
rsort() - 对数组进行降序排列
asort() - 根据关联数组的值,对数组进行升序排列
ksort() - 根据关联数组的键,对数组进行升序排列
arsort() - 根据关联数组的值,对数组进行降序排列
krsort() - 根据关联数组的键,对数组进行降序排列

sort() - 对数组进行升序排列

下面的实例将 $cars 数组中的元素按照字母升序排列:

扫描二维码关注公众号,回复: 3162534 查看本文章
<?php
$cars=array("Volvo","BMW","Toyota");
sort($cars);
?> 

运行结果:

Array
(
    [0] => BMW
    [1] => Toyota
    [2] => Volvo
)

下面的实例将 $numbers 数组中的元素按照数字升序排列:

<?php
$numbers=array(4,6,2,22,11);   
sort($numbers);
?> 
Array
(
    [0] => 2
    [1] => 4
    [2] => 6
    [3] => 11
    [4] => 22
)

rsort() - 对数组进行降序排列

下面的实例将 $cars 数组中的元素按照字母降序排列:

<?php
$cars=array("Volvo","BMW","Toyota");
rsort($cars);
?> 

运行结果

Array
(
    [0] => Volvo
    [1] => Toyota
    [2] => BMW
)

下面的实例将 $numbers 数组中的元素按照数字降序排列:

<?php
$numbers=array(4,6,2,22,11);
rsort($numbers);
?> 
Array
(
    [0] => 22
    [1] => 11
    [2] => 6
    [3] => 4
    [4] => 2
)

其他就不一一举例子了,蛮简单的
然后老传统,来写一个冒泡排序吧

<?php

    $num = array(1,3,2,10,7,6,0);
    $mycount = count($num);
    //echo $mycount;
    for($i = 0;$i<$mycount-1;$i++)
    {
        for($j = 0;$j<$mycount-1-$i;$j++)
        {
             if($num[$j]>$num[$j+1])
             {
                $temp = $num[$j];
                $num[$j] = $num[$j+1];
                $num[$j+1] = $temp;
             }

        }

    }
    for($i = 0;$i<count($num);$i++)
    {
            echo $num[$i];
            echo "<br>";
    }

?>

猜你喜欢

转载自blog.csdn.net/qq_35433716/article/details/82317526