使用php运行以下代码:$goods = array( 't' => array('日立', '海信', '创维'), 'computer' => array('戴尔', '华硕', '鸡基', '惠普'), 'network' => array('华为', 't-link', 'dlink'));// 访问一维数组元素echo $goods['t'][0]; // 输出:日立echo $goods['computer'][1]; // 输出:华硕echo $goods['network'][2]; // 输出:dlink
时间: 2023-05-14 07:07:07 浏览: 71
答案:这是一个使用 PHP 定义并访问多维数组的例子,可以通过 $数组名[键名][索引] 的方式访问数组元素。其中 $goods 是一个多维数组,包含了三个一维数组,分别是 't'、'computer' 和 'network',每个一维数组又包含了若干个元素。通过 $goods['t'][0] 可以访问到 't' 数组的第一个元素,即 '日立';同理,$goods['computer'][1] 可以访问到 'computer' 数组的第二个元素,即 '华硕';$goods['network'][2] 可以访问到 'network' 数组的第三个元素,即 'dlink'。
相关问题
$goods = array( 't' => array('日立', '海信', '创维'), 'computer' => array('戴尔', '华硕', '鸡基', '惠普'), 'network' => array('华为', 't-link', 'dlink'));// 访问一维数组元素echo $goods['t'][0]; // 输出:日立echo $goods['computer'][1]; // 输出:华硕echo $goods['network'][2]; // 输出:dlink
答案:访问二维数组元素的方法是通过数组名和下标来访问,第一个下标表示一维数组的键名,第二个下标表示二维数组的键名。所以,$goods['t'][0]表示访问一维数组元素中键名为't'的数组的第一个元素,即输出'日立';$goods['computer'][1]表示访问一维数组元素中键名为'computer'的数组的第二个元素,即输出'华硕';$goods['network'][2]表示访问一维数组元素中键名为'network'的数组的第三个元素,即输出'dlink'。
优化这段代码 $dyIds = array('95','96','97','98'); if (in_array($goods_id,$dyIds)) { echo "11111"; $dy = Db::table('douyin_tuan')->where(['goods_id'=>$goods_id,'user_id'=>$this->user_id])->where('status', 'neq', '2')->find(); if (!$dy){ $this->error('该商品为团购专属,您不符合条件!'); } }
这段代码可以进行如下优化:
$dyIds = ['95', '96', '97', '98'];
if (in_array($goods_id, $dyIds)) {
echo "11111";
$dy = Db::table('douyin_tuan')
->where('goods_id', $goods_id)
->where('user_id', $this->user_id)
->where('status', '<>', '2')
->find();
if (!$dy) {
$this->error('该商品为团购专属,您不符合条件!');
}
}
使用数组字面量代替 array(),使用 <> 代替 neq,使用链式调用代替多个 where() 方法,这样可以使代码更加简洁易读。