
//第一种
$arr = array('one'=>'one_value','two'=>'two_value','three'=>'three_value');
print_r(array_keys($arr));
//第二种
$arr = array(1,2,3,4,5);
print_r(array_keys($arr));
给你写个函数:
function haha($arr){$keys=array_rand($arr,5);
$re=array();
foreach($keys as $v){
$re[$v]=$arr[$v];
}
return $re;
}
$arr的值还是没变 的原因是: 你以值传递的方式修改的并不是$arr数组,而是$arr数组的副本,如果想修改$arr数组本身,需要将值传递修改为地址传递。
foreach($arr as $cc){ 这是值传递,改为地址传递即可 foreach($arr as &$cc)
完整代码如下:
<php
$arr = array(1 => array('id' => 1, 'pass' => '1'), '2' => array('id' => 2,'pass' => 2));
$row = array(1 => 'abc', 2 => 'def');
foreach ($arr as &$cc) //此处修改为地址传递
{
$id = $row[$cc['pass']];
$cc['pass'] = $id; //替换pass的值
}
echo '<pre>';
print_r($arr);
echo '</pre>';
>
数组指针
函数
current()
-
返回数组中的当前单元
end()
-
将数组的内部指针指向最后一个单元
prev()
-
将数组的内部指针倒回一位
reset()
-
将数组的内部指针指向第一个单元
each()
-
返回数组中当前的键/值对并将数组指针向前移动一步
next()
-
将数组中的内部指针向前移动一位
以上就是关于php如何打印数组下标全部的内容,包括:php如何打印数组下标、请教一下前辈php如何从一个数组中随机取五个数据(下标和值都要)、PHP 想从1组二维数组里取1个下标的值去其他数组查询另1个下标的值,然后用查询出来值替换原来二维数组里的等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)