我试图让数组包含两个值;技巧ID和描述。但是,当我打印数组的值时,它只显示Description。我怎样才能得到一个数组来显示两个?
$skillresult = $con->query("SELECT userskills.`SkillID`, `Description`, `Experience` FROM `User` INNER JOIN `userskills` ON User.`UserId` = userskills.`UserId` LEFT OUTER JOIN `Skills` ON userskills.`SkillID` = Skills.`SkillID` WHERE user.`UserID` ='$User'")
or die(mysqli_error($con));
$skills_array = array();
while($r=mysqli_fetch_array($skillresult))
{
if (!isset($skills_array[$r['SkillID']]))
{
$skills_array[$r['SkillID']] = array();
}
$skills_array[$r['SkillID']][] = $r['Description'];
}
打印输出:
Array ( [0] => Array ( [0] => Java ) [1] => Array ( [0] => Unix ) )
描述'Java'应该具有'1'和Unix'6'的技能ID。
答案 0 :(得分:0)
$skills_array
数组真的应该是二维的吗?
这不是你真正想要的吗?
Array ( 1 => Java, 6 => Unix)
在这种情况下,这可能有效:
while($r=mysqli_fetch_array($skillresult))
{
$skills_array[$r['SkillID']] = $r['Description'];
}