关于应聘数组的考试
1.$arr=array(array('name'=>'nuojiya','price'=>698),array('name'=>'ggg','price'=>4698),array('name'=>'nuojiya','price'=>1698),);定义一个函数
让上面的二维数组按价格price的升序来排列。
//$keys 传进来的字符,比如price; $type='asc' 表示默认的排序是升序
function sort($arr,$keys,$type='asc'){
$arrkeys=$new_arr=array();
foreach($arr as $k=>$v){
$arrkeys[$k]=$v[$keys];//保持新数组索引不变吧
}
if($type=='asc'){asort($arrkeys)}else{arsort($arrkeys)}//asort升序排序索引不变;arsort逆向排序索引不变。
reset($arrkeys);//把指针指向第一个元素
foreach($arrkeys as $k=>$v){
$new_arr[]=$arr[$k]; //注意$new_arr[] 而不是$new_arr;
}
return $new_arr;
}
//**按照价格的的排序,
1.取出价格的值,将其放到新的数组$arrkeys中。。
2.对$arrkeys 进行排序[ 按照值的排序,保持索引值不变 asort()]。。再把指针指向第一个元素。
3. 循环取 $arrkeys 的 key值,用 $new_arr=$arr[$key],,把里面的元素就按价格的升序压入新的数组中,最后,返回新的数组。
2.给$arr数组价格都加上1000返回;
function f($arr){
foreach($arr as $k=>$v){
$arr[$k]['price']=$v['price']+1000;
}
return $arr;
}
$array_shift()删除数组第一个元素并返回
$array_pop()删除最后一个元素并返回
$array_slice($arr,2,5)索引数组的元素
$array_splice($arr,2,5)删除索引到的数组元素
$array_keys(),$array_values()取键值啊
$array_unique()去掉重复的元素
$array_push()将元素压入数组中的末尾、
reset()指针指向第一个元素;next()指针指向下个元素;end()指针指向末尾
浙公网安备 33010602011771号