PHP 字符串作为mysqli_fetch_array的数组键


PHP string as array key for mysqli_fetch_array

我正在尝试使用变量(字符串)作为 PHP 脚本中 mysql 选择查询的数组键。

这是PHP代码:

$newskill="'".$skill."_!skill'";
//$newskill="'Working_!skill'"; //Will be written into the var in the line above
$skill = array();
$time = array();
while($row = mysqli_fetch_array($getSkills))
{
   $skill[] = $row[$newskill];
   $time[] = $row['updated_at'];
}

我收到此错误:

注意:未定义的索引:"Working_!skill' in ....''htdocs''skill''skilldiagram.php71

但它的工作方式是这样的:没有任何变化,但变量的内容被硬编码到源代码中。这样它工作得很好。

$skill = array();
$time = array();
while($row = mysqli_fetch_array($getSkills))
{
   $skill[] = $row['Working_!skill'];
   $time[] = $row['updated_at'];
}

你不需要$newskill中的文字引号。它应该是:

$newskill=$skill."_!skill";