搜索

首页  >  问答  >  正文

我有一个PHP问题不懂,是关于数组,下面有详细讲↓

请问这串代码 $values[$k]= isset($v[$key]) ? $v[$key] : ''; 中的 $values[$k] 和 $v[$key] 是什么意思。麻烦了各位大神。

附上源代码:

<?php
		function test($array=array(),$key='',$paixu=true){
			$result=array();
			
			foreach($array as $k => $v){
				$values[$k]= isset($v[$key]) ? $v[$key] : '';
			}
			unset($v);
			$paixu ? asort($values) : arsort($values);
			
			foreach ($values as $k => $v){
				$result[$k] = $array[$k];
			}
			return $result;
		}
	
		$data = array(
				array('post_id'=>1,'title'=>'如何学好PHP','reply_num'=>582),
				array('post_id'=>2,'title'=>'PHP数组常用函数汇总','reply_num'=>182),
				array('post_id'=>3,'title'=>'PHP字符串常用函数汇总','reply_num'=>982),
			);

		$paixuhou=test($data,'reply_num',true);
		echo "<pre>";
		print_r($paixuhou);
?>


刘毅刘毅2111 天前1236

全部回复(5)我来回复

  • phpcn_u146783

    phpcn_u1467832019-02-15 23:25:05

    $values 是函数内新开的数组,$k 来自 foreach 的遍历 是数组键值, $v 是 键值对应的数组值, $key 来自 函数形参中的 $key,

    可以看一下 foreach 这个函数

    回复
    1
  • 刘毅

    我想问一下,变量后面加一个中括号是什么意思。如$v[$key] 和 $values[$k] 像这样的。

    刘毅 · 2019-02-16 13:24:09
    刘毅

    谢谢您。

    刘毅 · 2019-02-16 13:24:32
    jjJ

    每一个数据都会有键值对应着数值 $k->$v

    jjJ · 2019-02-17 10:00:26
  • 取消回复