很多站长朋友们都不太清楚php炸开数组,今天小编就来给大家整理php炸开数组,希望对各位有所帮助,具体内容如下:
本文目录一览: 1、 php数组问题 2、 PHP 把二维数组按下标拆分成一维数组 3、 php里面怎么新建数组? 4、 php 常用的数组函数都有哪些? 作用是什么?有什么特点? 怎么使用? 5、 PHP 文件数组问题 php数组问题1、PHP的for不能这么用,PHP的for只能类似这样:
for($i=1;$i<100;$i++) {}
2、你可能把foreach的两种小变化给弄混了,foreach可以这样
foreach ($month as $key=>$value)
foreach ($month as $value)
第一种是把键名放在$key中,把键值放在$value中
第二种是不管键名,只把键值放在$value中
使用中的区别只是看你是否需要用到数组的键名,其他没有区别
3、用for也可遍历数组,但是相比foreach来讲,在遍历数组这件事情上,foreach效率更高
PHP 把二维数组按下标拆分成一维数组thinkphp将二维数组变为标签适用的一维数组
方法一:
$projectList=arr1tag($projectList,array('','
请选择
'),'project_name');
//
其中
$list
为传值过来的二维数组,
$default
为默认值,
$k
为指定的表字段
function arr1tag($list,$default='',$k=''){
$tmp='';
if(array($list)){
if(array($default)){
$tmp[$default[0]]=$default[1];
}
foreach ($list as $k1=>$v1){
$tmp[$k1+1]=$v1[$k];
}
}
return $tmp;
}
方法二参考文献():
$projectList=arr2tag($projectList,array('','
请选择
'),'');
//
根据数组下标获取对应值
function array_index2val($array,$index=0){
$value='';
if(is_array($array)){
$i=0;
foreach($array as $val){
if($i===$index){
$value=$val;
break;
}
$i++;
}
}
return $value;
}
//
把数据库中调出的数组转换成可以使用模版标签的数组,其中
$default
为默认值,
$k
为指
定的表字段
function arr2tag($arr,$default=NULL,$K=NULL){
$tmp='';
if(is_array($arr)){
if(is_array($default)){
$tmp[$default[0]]=$default[1];
if($type==1){
$tmp[$default[2]]=$default[3];
}
}
foreach ($arr as $key=>$val){
if(is_array($K)){
$tmp[$val[$K[0]]]=$val[$K[1]];
}else{
$tmp[array_index2val($val,0)]=array_index2val($val,1);
}
}
}
return $tmp;
}
方法三:
将读取数据库的内容直接转换为一维数组,
该方法大多用于
select
标签
$this->where($where)->getField('id,name');
得出的内容为
array(
'id' => 'name',
)
方法四参考文献()
<?php
// 后盾网团队
$arr = array(
1 => array(
'a' => 12,
'b' => 34,
),
2 => array(
'c' => 56,
'd' => 78,
),
);
$res = doXxxx($arr);
var_dump($res);
function doXxxx($arr = array()) {
$data = array();
if (!is_array($arr) || empty($arr)) {
return $data;
}
foreach ($arr as $key => $item) {
$data += $item;
}
return $data;
}
php里面怎么新建数组?php里面新建数据可以通过两种方式,一种是通过array函数来创建,另一种就是通过赋值[]来创建。
<?php
$arr1 = array(1,2,3,4);
var_dump($arr1);
$arr2[0] = 1;
$arr2[1] = 2;
$arr2[2] = 3;
$arr2[3] = 4;
var_dump($arr2);
php 常用的数组函数都有哪些? 作用是什么?有什么特点? 怎么使用?php常用的数组函数的作用特点如下:
array_change_key_case -- 返回字符串键名全为小写或大写的数组
array_chunk -- 将一个数组分割成多个
array_combine -- 创建一个数组,用一个数组的值作为其键名,另一个数组的值作为其值
array_count_values -- 统计数组中所有的值出现的次数
array_diff_assoc -- 带索引检查计算数组的差集
array_diff_key -- 使用键名比较计算数组的差集
array_diff_uassoc -- 用用户提供的回调函数做索引检查来计算数组的差集
array_diff_ukey -- 用回调函数对键名比较计算数组的差集
array_diff -- 计算数组的差集
array_fill_keys -- 使用指定的键和值填充数组
array_fill -- 用给定的值填充数组
array_filter -- 用回调函数过滤数组中的单元
array_flip -- 交换数组中的键和值
array_intersect_assoc -- 带索引检查计算数组的交集
array_intersect_key -- 使用键名比较计算数组的交集
array_intersect_uassoc -- 带索引检查计算数组的交集,用回调函数比较索引
array_intersect_ukey -- 用回调函数比较键名来计算数组的交集
array_intersect -- 计算数组的交集
array_key_exists -- 检查给定的键名或索引是否存在于数组中
array_keys -- 返回数组中所有的键名
array_map -- 将回调函数作用到给定数组的单元上
array_merge_recursive -- 递归地合并一个或多个数组
array_merge -- 合并一个或多个数组
array_multisort -- 对多个数组或多维数组进行排序
array_pad -- 用值将数组填补到指定长度
array_pop -- 将数组最后一个单元弹出(出栈)
array_product -- 计算数组中所有值的乘积
array_push -- 将一个或多个单元压入数组的末尾(入栈)
array_rand -- 从数组中随机取出一个或多个单元
array_reduce -- 用回调函数迭代地将数组简化为单一的值
array_replace_recursive -- 使用传递的数组递归替换第一个数组的元素
array_replace -- 使用传递的数组替换第一个数组的元素
array_reverse -- 返回一个单元顺序相反的数组
array_search -- 在数组中搜索给定的值,如果成功则返回相应的键名
array_shift -- 将数组开头的单元移出数组
array_slice -- 从数组中取出一段
array_splice -- 把数组中的一部分去掉并用其它值取代
array_sum -- 计算数组中所有值的和
array_udiff_assoc -- 带索引检查计算数组的差集,用回调函数比较数据
array_udiff_uassoc -- 带索引检查计算数组的差集,用回调函数比较数据和索引
array_udiff -- 用回调函数比较数据来计算数组的差集
array_uintersect_assoc -- 带索引检查计算数组的交集,用回调函数比较数据
array_uintersect_uassoc -- 带索引检查计算数组的交集,用回调函数比较数据和索引
array_uintersect -- 计算数组的交集,用回调函数比较数据
array_unique -- 移除数组中重复的值
array_unshift -- 在数组开头插入一个或多个单元
array_values -- 返回数组中所有的值
array_walk_recursive -- 对数组中的每个成员递归地应用用户函数
array_walk -- 对数组中的每个成员应用用户函数
array -- 新建一个数组
arsort -- 对数组进行逆向排序并保持索引关系
asort -- 对数组进行排序并保持索引关系
compact -- 建立一个数组,包括变量名和它们的值
count -- 计算数组中的单元数目或对象中的属性个数
current -- 返回数组中的当前单元
each -- 返回数组中当前的键/值对并将数组指针向前移动一步
end -- 将数组的内部指针指向最后一个单元
extract -- 从数组中将变量导入到当前的符号表
in_array -- 检查数组中是否存在某个值
key -- 从关联数组中取得键名
krsort -- 对数组按照键名逆向排序
ksort -- 对数组按照键名排序
list -- 把数组中的值赋给一些变量
natcasesort -- 用“自然排序”算法对数组进行不区分大小写字母的排序
natsort -- 用“自然排序”算法对数组排序
next -- 将数组中的内部指针向前移动一位
pos -- current 的别名
prev -- 将数组的内部指针倒回一位
range -- 建立一个包含指定范围单元的数组
reset -- 将数组的内部指针指向第一个单元
rsort -- 对数组逆向排序
shuffle -- 将数组打乱
sizeof -- count 的别名
sort -- 对数组排序
uasort -- 使用用户自定义的比较函数对数组中的值进行排序并保持索引关联
uksort -- 使用用户自定义的比较函数对数组中的键名进行排序
usort -- 使用用户自定义的比较函数对数组中的值进行排序
关于如何使用,那是要根据使用者需求来衡量,不能一言概括
使用语法如下:
<?php
$arr = array('Hello','World!');
$arr = implode(',',$arr);
echo $arr;
?>
结果是:HelloWorld!
如果你想更多的了解php的数组函数,我建议你详细地去看看php手册
php手册官网:
PHP 文件数组问题举个例子给你看你就明白了:
1.将数组写到tmp.php里面:
<?php
$a = array (1, 2, array ("a", "b", "c"));
$handle = fopen("./tmp.php", "w+");
fwrite($handle, '<?php'.chr(10).'$a='.var_export ($a,true).';'.chr(10).'?>');
?>
2.在要用到$a数组的页面里面包含tmp.php后,$a就可以直接用了。
<?php
require_once("./tmp.php");
print_r($a);
?>
关于php炸开数组的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。