回显一个数组值,给出另一个数组的键
echoing an array value giving a key from another array
我知道这很简单,但我无法理解它...
我有 2 个数组。两者都是从数据库查找中填充的。
数组 1
Array (
[sailID] => 7
[sailTag] => 100004
[assigneduser] => Jason Ellmers
[assigneddate] => 2018-05-30 17:48:57
[cutuser] => Jason Ellmers
[cutdate] => 2018-05-30 20:31:23
[stickuser] => Jason Ellmers
[stickdate] => 2018-05-30 20:38:24
[corneruser] => Jason Ellmers
[cornerdate] => 2018-05-30 20:38:54
[finishuser] => Jason Ellmers
[finishdate] => 2018-05-30 20:39:53
[checkuser] =>
[checkdate] => 0000-00-00 00:00:00
[DesignRef] => 420abcdefg
[OrderingLoft] => 1
[ClassRef] => 1
[ClothType] => Bainbridge
[ClothColour] => White
[ClothWeight] => 12oz
[SailNo] => GB342398 )
数组 2
Array (
[0] => Array (
[id] => 1
[name] => 420 )
[1] => Array (
[id] => 2
[name] => J24 ) )
我之后要做的是能够回显到屏幕 $array1['Where the ClassRef is a lookup of the ID in Array2' 并显示 Array2 中的名称]
因此对于上面的示例,Echo 将是“420”
我想我可以使用 foreach 或 while 循环来完成,但这似乎有点麻烦???
我不得不将一些测试数据放在一起,但是从评论来看,我的想法是使用 array_column()
以 id 作为索引重新索引第二个数组,所以代码(如您已经解决了)是...
$array1 =[
"sailID" => 7,
"sailTag" => "100004",
"ClassRef" => 1 ];
$array2 = [["id" => 1, "name" => "420"],
["id" => 2, "name" => "J24"]];
$array2 = array_column($array2, "name", "id");
echo $array2[$array1["ClassRef"]];
我知道这很简单,但我无法理解它...
我有 2 个数组。两者都是从数据库查找中填充的。
数组 1
Array (
[sailID] => 7
[sailTag] => 100004
[assigneduser] => Jason Ellmers
[assigneddate] => 2018-05-30 17:48:57
[cutuser] => Jason Ellmers
[cutdate] => 2018-05-30 20:31:23
[stickuser] => Jason Ellmers
[stickdate] => 2018-05-30 20:38:24
[corneruser] => Jason Ellmers
[cornerdate] => 2018-05-30 20:38:54
[finishuser] => Jason Ellmers
[finishdate] => 2018-05-30 20:39:53
[checkuser] =>
[checkdate] => 0000-00-00 00:00:00
[DesignRef] => 420abcdefg
[OrderingLoft] => 1
[ClassRef] => 1
[ClothType] => Bainbridge
[ClothColour] => White
[ClothWeight] => 12oz
[SailNo] => GB342398 )
数组 2
Array (
[0] => Array (
[id] => 1
[name] => 420 )
[1] => Array (
[id] => 2
[name] => J24 ) )
我之后要做的是能够回显到屏幕 $array1['Where the ClassRef is a lookup of the ID in Array2' 并显示 Array2 中的名称]
因此对于上面的示例,Echo 将是“420”
我想我可以使用 foreach 或 while 循环来完成,但这似乎有点麻烦???
我不得不将一些测试数据放在一起,但是从评论来看,我的想法是使用 array_column()
以 id 作为索引重新索引第二个数组,所以代码(如您已经解决了)是...
$array1 =[
"sailID" => 7,
"sailTag" => "100004",
"ClassRef" => 1 ];
$array2 = [["id" => 1, "name" => "420"],
["id" => 2, "name" => "J24"]];
$array2 = array_column($array2, "name", "id");
echo $array2[$array1["ClassRef"]];