-->

PHP资讯

您的当前位置:首页 > 资讯 > PHP基础

php基础-数组整理(二)

2020-03-23 10:05:39  来源:admin 点击:830

PHP array_change_key_case() 函数

Array必填

case       可选。可能的值:

CASE_LOWER - 默认值。将数组的键转换为小写字母。

CASE_UPPER - 将数组的键转换为大写字母。

PHP array_chunk() 函数

把数组分割为带有两个元素的数组:array_chunk(array,size,preserve_key);

preserve_key      

可选。可能的值:

true - 保留原始数组中的键名。

false - 默认。每个结果数组使用从零开始的新数组索引。

<?php

$cars=array("Volvo","BMW","Toyota","Honda","Mercedes","Opel");

print_r(array_chunk($cars,2));

?>

PHP array_column() 函数

从记录集中取出 last_name 列:

<?php

// 表示由数据库返回的可能记录集的数组

$a = array(

  array(

    'id' => 5698,

    'first_name' => 'Bill',

    'last_name' => 'Gates',

  ),

  array(

    'id' => 4767,

    'first_name' => 'Steve',

    'last_name' => 'Jobs',

  ),

  array(

    'id' => 3809,

    'first_name' => 'Mark',

    'last_name' => 'Zuckerberg',

  )

);

$last_names = array_column($a, 'last_name');

print_r($last_names);

?>

输出:

Array

(

  [0] => Gates

  [1] => Jobs

  [2] => Zuckerberg

)

//用id为列则输出如下

$last_names = array_column($a, 'last_name', 'id');

print_r($last_names);

Array

(

  [5698] => Gates

  [4767] => Jobs

  [3809] => Zuckerberg

)

PHP array_combine() 函数

array_combine() 函数通过合并两个数组来创建一个新数组,其中的一个数组是键名,另一个数组的值为键值。array_combine(keys,values);

注释:键名数组和键值数组的元素个数必须相同!

如果其中一个数组为空,或者两个数组的元素个数不同,则该函数返回 false。

PHP array_count_values() 函数

对数组中的所有值进行计数:

<?php

$a=array("A","Cat","Dog","A","Dog");

print_r(array_count_values($a));

?>

//Array ( [A] => 2 [Cat] => 1 [Dog] => 2 )

PHP array_diff() 函数

比较两个数组的键值,并返回差集:

<?php

$a1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow");

$a2=array("e"=>"red","f"=>"green","g"=>"blue");

$result=array_diff($a1,$a2);

print_r($result);

?>

//Array ( [d] => yellow )

array_diff_assoc()

比较两个数组的键和值,并返回差集:

<?php

$a1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow");

$a2=array("a"=>"red","b"=>"green","c"=>"blue");

$result=array_diff_assoc($a1,$a2);

print_r($result);

?>

PHP array_diff_uassoc() 函数

比较两个数组的键名和键值(使用用户自定义函数来比较键名),并返回差集:

<?php

function myfunction($a,$b)

{

if ($a===$b)

  {

  return 0;

  }

  return ($a>$b)?1:-1;

}

$a1=array("a"=>"red","b"=>"green","c"=>"blue");

$a2=array("d"=>"red","b"=>"green","e"=>"blue");

$result=array_diff_uassoc($a1,$a2,"myfunction");

print_r($result);

?>

PHP array_flip() 函数

反转数组中所有的键以及它们关联的值:

<?php

$a1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow");

$result=array_flip($a1);

print_r($result);

?>

// Array ( [red] => a [green] => b [blue] => c [yellow] => d )

PHP array_intersect() 函数

比较两个数组的键值,并返回交集:

<?php

$a1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow");

$a2=array("e"=>"red","f"=>"green","g"=>"blue");

$result=array_intersect($a1,$a2);

print_r($result);

?>

PHP array_key_exists() 函数

检查键名 "Volvo" 是否存在于数组中:

<?php

$a=array("Volvo"=>"XC90","BMW"=>"X5");

if (array_key_exists("Volvo",$a))

  {

  echo "键存在!";

  }

else

  {

  echo "键不存在!";

  }

?>

//键存在!

PHP array_keys() 函数

返回包含数组中所有键名的一个新数组:

<?php

$a=array("Volvo"=>"XC90","BMW"=>"X5","Toyota"=>"Highlander");

print_r(array_keys($a));

?>

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

使用 value 参数:返回那个键值的键名

<?php

$a=array("Volvo"=>"XC90","BMW"=>"X5","Toyota"=>"Highlander");

print_r(array_keys($a,"Highlander"));

?>

// Array ( [0] => Toyota )

PHP array_map() 函数

将函数作用到数组中的每个值上,每个值都乘以本身,并返回带有新值的数组:

<?php

function myfunction($v)

{

  return($v*$v);

}

 

$a=array(1,2,3,4,5);

print_r(array_map("myfunction",$a));

?>

Array ( [0] => 1 [1] => 4 [2] => 9 [3] => 16 [4] => 25 )

使用两个数组:

<?php

function myfunction($v1,$v2)

{

if ($v1===$v2)

  {

  return "same";

  }

return "different";

}

 

$a1=array("Horse","Dog","Cat");

$a2=array("Cow","Dog","Rat");

print_r(array_map("myfunction",$a1,$a2));

?>

// Array ( [0] => different [1] => same [2] => different )

将数组中值的所有字母改为大写:

<?php

function myfunction($v)

{

$v=strtoupper($v);

  return $v;

}

$a=array("Animal" => "horse", "Type" => "mammal");

print_r(array_map("myfunction",$a));

?>

Array ( [Animal] => HORSE [Type] => MAMMAL )

将函数名赋值为 null 时:

<?php

$a1=array("Dog","Cat");

$a2=array("Puppy","Kitten");

print_r(array_map(null,$a1,$a2));

?>

Array ( [0] => Array ( [0] => Dog [1] => Puppy ) [1] => Array ( [0] => Cat [1] => Kitten ) )

PHP array_walk() 函数

对数组中的每个元素应用用户自定义函数:

<?php

function myfunction($value,$key)

{

echo "The key $key has the value $value<br>";

}

$a=array("a"=>"red","b"=>"green","c"=>"blue");

array_walk($a,"myfunction");

?>

The key a has the value red

The key b has the value green

The key c has the value blue

相关文章更多 >

© 2024版权所有 水水网

电话:171780793