① php数组foreach出来如何控制里面的顺序
foreach没有控制顺序的,你要么可以用for来控制,要么你就在foreach之前用soft、asoft等函数来对数据先进行排序。
② php:输出300倒序到0的数组,每行递减10,3的倍数加粗
方法1,累加
<?php
$arr=array(1,2,3,4);
$sum=0;//设变量
foreach($arr as $value){
echo $value.'<br>';
$sum+=$value;//累加
}
echo $sum;//显示
方法2,直接求
<?php
$arr=array(1,2,3,4);
echo array_sum($arr);
③ php 根据某个字段对二维数组这个数组排序
试编写代码如下:
<?php
$array[] = array('id'=>1,'price'=>50);
$array[] = array('id'=>2,'price'=>70);
$array[] = array('id'=>3,'price'=>30);
$array[] = array('id'=>4,'price'=>20);
foreach ($array as $key=>$value){
$id[$key] = $value['id'];
$price[$key] = $value['price'];
}
array_multisort($price,SORT_NUMERIC,SORT_DESC,$id,SORT_STRING,SORT_ASC,$array);
echo '<pre>';
print_r($array);
echo '</pre>';
?>
运行结果:
Array
(
[0] => Array
(
[id] => 2
[price] => 70
)
[1] => Array
(
[id] => 1
[price] => 50
)
[2] => Array
(
[id] => 3
[price] => 30
)
[3] => Array
(
[id] => 4
[price] => 20
)
)
④ php数组的key与value翻转
可以逆转,不过其中会有3个值,因为你的b,d,f出现都是一次,所以转过来以后b,d的位置就会被最后出现的f替换掉
$arr = array("a","b","c","a","c","a",'d','f');
$list = array_count_values($arr);
echo "<pre>";
print_r($list);
foreach($list as $k=>$v){
$arr1[$v]=$k;
}
建议重组
输出如下:
Array
(
[a] => 3
[b] => 1
[c] => 2
[d] => 1
[f] => 1
)
Array
(
[3] => a
[1] => f
[2] => c
)
⑤ PHP如何让数据倒序显示
有两种方法:
1、如果直接是字符串或者是数组,分别用strrev 或者array_reverse反转可以
2、自己写一个算法,让字符串反转过来。$str = "abcdef";for ($i=1; $i<=strlen($str); $i++){
echo substr($str , -$i , 1)}。
⑥ PHP中foreach函数用法
1.foreach(被foreach的对象(一般是数组)as 内容) {
}
例子
$x = array(1,2,3,4,5)
foreach ($x as $y) {
//这里的y依次为1,2,3,4,5
}
2.foreach(被foreach的对象(一般是数组)as index => 内容) {
}
例子
$x = array(1,2,3,4,5)
foreach ($x as $index => $y) {
//这里的y依次为1,2,3,4,5, $index依次为0,1,2,3,4
}
⑦ php中关于foreach排序的问题,如下代码,进行按id从大到小排序,ddres是数据库中的数据
家庭微孝相册书
路过,看不懂
你查询数据的时候就按id倒序来查不就ok?
进行按id从大到小排序,ddres是数据库中的数据
⑧ php中的 foreach 对数组重新排序 很简单
<?php
$data = array(
array("id" => 1, "name" => "Boney M", "rating" => 3),
array("id" => 2, "name" => "Take That", "rating" => 1),
array("id" => 3, "name" => "The Killers", "rating" => 4),
array("id" => 4, "name" => "Lusain", "rating" => 3),
);
//排序
function cmp(&$a,&$b){ return $a['rating']-$b['rating']; }
usort($data,'cmp');
var_mp($data);
=======
array
0 =>
array
'id' => int 2
'name' => string 'Take That' (length=9)
'rating' => int 1
1 =>
array
'id' => int 1
'name' => string 'Boney M' (length=7)
'rating' => int 3
2 =>
array
'id' => int 4
'name' => string 'Lusain' (length=6)
'rating' => int 3
3 =>
array
'id' => int 3
'name' => string 'The Killers' (length=11)
'rating' => int 4
⑨ php for 倒序输出
不知道你要干什么,但是遍历数组foreach是更好的选择,倒叙的话
array_reverse方法可以实现