我的代碼有問題,并且已經嘗試從資料庫中獲取資料并將它們放入帶有單引號的陣列中。但是,我仍然沒有得到想要的輸出。
運行 SQL 后的 phpMyAdmin 結果
我的代碼
$sql = "SELECT DISTINCT S.SKILL_NAME ,GROUP_CONCAT(SK.SKILLSET_NAME) AS SKILLSET_ALL
FROM SKILL S
LEFT JOIN SKILLSET SK ON S.SKILL_ID = SK.SKILL_ID
GROUP BY S.SKILL_ID, S.SKILL_NAME";
$result = mysqli_query($conn,$sql);
$skillset = [];
$skillname = [];
$count = 0;
$checkrows=mysqli_num_rows($result);
if ($checkrows > 0)
{
while($row = mysqli_fetch_array($result))
{
$skillname[] = $row['SKILL_NAME'];
$skillset[] = $row['SKILLSET_ALL'];
$count ;
}
}
$keys = array_keys($skillname);
for($i = 0; $i < count($skillname); $i ) {
$objects =
[
$skillname[$i] . " => '". $skillset[$i] . "'",
];
print_r($objects);
}
我在 print_r($objects) 之后得到了什么
Array ( [0] => ANDROID STUDIO => 'Array,Array,Array,cs230,cs230' ) Array ( [0] => C# => 'Java,Eclipse,Java,Eclipse,C#' )
我需要的
'ANDROID STUDIO' => ['cs230', 'cs230', 'Array', 'Array', 'Array'],
'C#' => ['Java', 'Eclipse', 'Java', 'Eclipse', 'C#],
謝謝你。
uj5u.com熱心網友回復:
當我查看你的SQL 表時,看起來你得到的$row['SKILLSET_ALL']是字串而不是陣列
使用explode以下方法將其更改為陣列:
$skillset[] = explode(',', $row['SKILLSET_ALL'])
也許你得到了你想要的輸出
uj5u.com熱心網友回復:
我認為您可以將單引號放在 之前和之后$skillset。
$keys = array_keys($skillname);
for($i = 0; $i < count($skillname); $i ) {
$objects =
[
$skillname[$i] . " => '". $skillset[$i] . "'",
];
print_r($objects);
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/407973.html
標籤:
上一篇:npm錯誤!代碼EACCES,npminstall--globalyarn遇到錯誤
下一篇:如何在html/js中將表格居中
