php数组包含数组
1. php里说出数组的常用函数及用法
PHP常用操作数组的函数
变量和数组的转换
compact() 将变量整合成数组
extract() 将数组中的每个值以键的名分解成变量
变量和字符串转换
explode() 以某个子串分解字符串成数组
implode() 将一维数组根据某个符号拼接成字符串
数组与数组之间关系
array_merge() 合并/并集
array_diff() 差集
array_intersect() 交集
数组值的操作
array_pop() 删除(弹出)数组最后一个值
array_push() 向数组中追加一个值
判断数组是否存在数组中
in_array() 判断一个值是否存在数组中
array_key_exists() 判断键是否存在数组中
数组去重
array_unique() 数组去重
获取二维数组中的值的集合
array_column() 获取二维数组中的值的集合
提取数组的键与值
array_values 提取数组的值构成一维数组
array_keys 提取数组的键构成一维数组
返回数组中的随机的键
array_rand() 返回数组中的随机的键
返回数组中值的数量
count() 返回数组中值的和
查询数组中的值
array_search() 查询数组中的值是否存在/in_array()有点相似
排序
sort() 排序有很多种,按键或值升降序
array_multisort() 多维数组排序
分割数组
array_chunk()
2. php数组包含对象,对象包含数组怎么调用
$d->_data[0]->id;
简单点的话
$d=json_decode(json_encode($d),true);
$d['_data'][0]['id'];
3. php数组的基本语法 : PHP 数组
数组能够在单独的变量名中存储一个或多个值。
实例
数组在单个变量中存储多个值:
<?php
$cars=array("Volvo","BMW","SAAB");
echo
"I
like
"
.
$cars[0]
.
",
"
.
$cars[1]
.
"
and
"
.
$cars[2]
.
".";
?>
什么是数组?
数组是特殊的变量,它可以同时保存一个以上的值。
如果您有一个项目列表(例如汽车品牌列表),在单个变量中存储这些品牌名称是这样的:
$cars1="Volvo";
$cars2="BMW";
$cars3="SAAB";
不过,假如您希望对变量进行遍历并找出特定的那个值?或者如果您需要存储
300
个汽车品牌,而不是
3
个呢?
解决方法是创建数组!
数组能够在单一变量名中存储许多值,并且您能够通过引用下标号来访问某个值。
在
PHP
中创建数组
在
PHP
中,
array()
函数用于创建数组:
array();
在
PHP
中,有三种数组类型:
索引数组
-
带有数字索引的数组
关联数组
-
带有指定键的数组
多维数组
-
包含一个或多个数组的数组
PHP
索引数组
有两种创建索引数组的方法:
索引是自动分配的(索引从
0
开始):
$cars=array("Volvo","BMW","SAAB");
或者也可以手动分配索引:
$cars[0]="Volvo";
$cars[1]="BMW";
$cars[2]="SAAB";
下面的例子创建名为
$cars
的索引数组,为其分配三个元素,然后输出包含数组值的一段文本:
实例
<?php
$cars=array("Volvo","BMW","SAAB");
echo
"I
like
"
.
$cars[0]
.
",
"
.
$cars[1]
.
"
and
"
.
$cars[2]
.
".";
?>
获得数组的长度
-
count()
函数
count()
函数用于返回数组的长度(元素数):
实例
<?php
$cars=array("Volvo","BMW","SAAB");
echo
count($cars);
?>
遍历索引数组
如需遍历并输出索引数组的所有值,您可以使用
for
循环,就像这样:
实例
<?php
$cars=array("Volvo","BMW","SAAB");
$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("Bill"=>"35","Steve"=>"37","Peter"=>"43");
echo
"Peter
is
"
.
$age['Peter']
.
"
years
old.";
?>
遍历关联数组
如需遍历并输出关联数组的所有值,您可以使用
foreach
循环,就像这样:
实例
<?php
$age=array("Bill"=>"35","Steve"=>"37","Peter"=>"43");
foreach($age
as
$x=>$x_value)
{
echo
"Key="
.
$x
.
",
Value="
.
$x_value;
echo
"<br>";
}
?>
4. php中一个数组中嵌套一个数组
PHP中的 explode() 函数可以实现此功能语法 explode(separator,string,limit) 参数 描述 separator 必需,规定在哪里分割字符串。 string 必需,要分割的字符串。 limit 可选,规定所返回的数组元素的数目。例如: 输出如下: Array ( [0] => one [1] => two [2] => three [3] => four )
5. php判断数组包含另一个数组
$tids=array(2=>'19',3=>'13',);
$ids=array(0=>'96',1=>'116',2=>'13',3=>'19');
$flag=true;
foreach($tidsas$val){
if(!in_array($val,$ids)){
$flag=false;
break;
}
}
if($flag){
echo"包含";
}else{
echo"不包含";
}
6. php中数组的定义有几种方法及区别
数组在PHP中包含2种表现,
一种是普通数组,定义方式有二种,
第一:
$a = array("aa","bb","cc")
第二:
$a[] = "aa";
$a[] = "bb"
$a[] = "cc";
一般用数组遍历的方式可以打印出所有数据,也可以使用数组的位标(从0开始计算)自定义打印,比如:
$a[0]的值就是aa,$a[1]的值是"bb"
数组遍历自己搜索下,也是2种方式
另外是别名数组,定义也是2种
第一:
$a = array("aa"=> "11","bb"=>"22")
第二:
$a["aa"] = "11";
$a["bb"] = "22";
使用数组的位标在别名数组就不行了,必须用别名
$a[0]就取不到值了,$a[“aa”]才能取到值"11"
数组遍历其中foreach有点不一样,自己搜索下
7. php 一个数组包含另一个数组所有数据
$arr1 = array('白发魔女已经大结局了','白发魔女还没有大结局','白发魔女谁是主演','白发魔女男主角是谁','白发魔女大结局好看吗'); $arr2 = array('结局','主演'); $result = array(); foreach($arr1 as $value1){ if(strpos($value1,$arr2[0])){ $result[] = $value1; } if(strpos($value1,$arr2[1])){ $result[] = $value1; } } print_r($result);
8. php判断一个数组中包含另一个数组值的值
$arr1 = array('白发魔女已经大结局了','白发魔女还没有大结局','白发魔女谁是主演','白发魔女男主角是谁','白发魔女大结局好看吗');
$arr2 = array('结局','主演');
$result = array();
foreach($arr1 as $value1){
if(strpos($value1,$arr2[0])){
$result[] = $value1;
}
if(strpos($value1,$arr2[1])){
$result[] = $value1;
}
}
print_r($result);
9. php数组的基本语法 : PHP 数组
数组
php 中的数组实际上是一个有序图。图是一种把 values 映射到 keys 的类型。此类型在很多方面做了优化,因此可以把它当成真正的数组来使用,或列表(矢量),散列表(是图的一种实现),字典,集合,栈,队列以及更多可能性。因为可以用另一个 php 数组作为值,也可以很容易地模拟树。
解释这些结构超出了本手册的范围,但对于每种结构至少会发现一个例子。要得到这些结构的更多信息,建议参考有关此广阔主题的外部着作。
10. PHP数组中包含数组,计算数组中元素个数。array(1,2,array(1,2),2)
刚写的,测试没问题
$arrt=array(1,2,array(1,array(1,array(1,2),2),2),2);
$num=0;
js_arr($arrt);
echo($num);
functionjs_arr($arr){
global$num;
foreach($arras$v){
if(is_array($v)){
js_arr($v);
}else{
$num++;
}
}
}