php怎么把关联数组转成索引数组

2025-04-28 00:53:15
推荐回答(5个)
回答1:

PHP和PERL、VB不同,其只有“数组”,没有单独的“关联数组”类型,实际上PHP的所有数组都是关联数组,当没有指定键值的时候,键值为0、1、2……

php中定义数组的方法:

  1. PHP定义数组的格式

    数组名=array();

    如:$aa=array();//这样就定义了一个数组,

    之后给元素赋值:

    $aa[0]="9016";

    $aa[1]="9017";

    $aa[2]="9018";

  2. PHP输出数组的方法:

    foreach($aa as $val)

    {echo$val;}

    也可以在定义数组时直接赋值

    $aa=array(0=>"9016",1=>"9017";2=>"9018");

  3. PHP的数组还可以用字符做下标,不一定要数字.

    $aa["name"]="Joan";

    $aa["num"]="9018";

    $aa["email"]="abc@abc.com";

    也可以这样

    $aa=array("name"=>"joan","num"=>"9018","email"=>"abc@abc.com");

    将一个一维数组的元素也定义为数组,就是一个二维数组,

    $aa=array(0=>"a1",1=>"a2");

    $bb=array(0=>"b1",1=>"b2");

    $cc=array(0=>$aa;1=>$bb);此时,$cc[0]也是一个数组,$cc[1]也是一个数组,$cc就是一个二维数组。

    同理,三维,四维数组也可以继续定义下去。

  4. 数组的元素不仅于数字和字符串,可以是类的对象。

回答2:

//你的关联数组
$oldArr = array(
    'name' =>  '张三',
    'age'    => 100,
    'sex'    =>  'boy'
);

//传入一个关联数组  返回一个索引数组
function toIndexArr($arr){
    $i=0;
    foreach($arr as $key => $value){
        $newArr[$i] = $value;
        $i++
    }
    return $newArr;
}

//调用打印
print_r(toIndexArr($oldArr));
?>

回答3:

PHP和PERL、VB不同,其只有“数组”,没有单独的“关联数组”类型,实际上PHP的所有数组都是关联数组,当没有指定键值的时候,键值为0、1、2……

例如:
$arr=array('a', 'b', 'c');

等效于:
$arr=array(0=>'a', 1=>'b',2=>'c');

回答4:

用sort函数即可

回答5:

array_values()