gpt4 book ai didi

php - 将多维php数组插入mysql表

转载 作者:行者123 更新时间:2023-11-30 22:04:22 25 4
gpt4 key购买 nike

这是我的多维数组。我是 Php 的新手 ..我想输入名称、文件夹 ID 并将其上传到 sql 表中,但卡在数组部分。我需要帮助

Array
(
[status] => 200
[msg] => OK
[result] => Array
(
[folders] => Array
(
[0] => Array
(
[id] => 1861013
[name] => .videothumb
)

)

[files] => Array
(
[0] => Array
(
[name] => wildlife.mp4
[cblock] =>
[sha1] => d5d4e1001f98f70324ef4f84ccd6d683f653c513
[folderid] => 1861011
[upload_at] => 1487016733
[status] => active
[size] => 558253404
[link] => link here
[download_count] => 0
[cstatus] => ok

)

)

)

)

这是我试图用来将数据插入表中的 mysql 插入代码,但我在数据库中得到的都是零

 $st = $dbh->prepare("INSERT INTO movies(name, upload_at, link, folderid)     
VALUES (:field1, :field2, :field3, :field4)");


// bind variables to insert query params

$st->bindParam(1, $name);
$st->bindParam(2, $uploadat );
$st->bindParam(3, $link);
$st->bindParam(4, $folderid);




$json = file_get_contents($filename);

//convert json object to php associative array

$data = json_decode($json, true);





// loop through the array
foreach ($data as $item)
{ $name = $item['result']['folders'][0]['id'];
$uploadat = $item['result']['files'][0]['upload_at'];
$link = $item['result']['files'][0]['link'];
$folderid = $item['result']['files'][0]['folderid'];

echo $name;
echo $folderid;
// execute insert query
$st->execute(array(':field1'=>$name,
':field2'=>$uploadat,
':field3'=>$link,
':field4'=>$folderid));
}

最佳答案

因为数组结构没有将文件子数组嵌套在文件夹子数组中,所以我假设文件夹的索引对应于文件的索引。

foreach($data["result"]["folders"] as $index=>$subarray){
$st->execute(array(':field1'=>$subarray["id"],
':field2'=>$data["result"]["files"][$index]["uploadat"],
':field3'=>$data["result"]["files"][$index]["link"],
':field4'=>$data["result"]["files"][$index]["folderid"]));
}

可疑的是,$data["result"]["files"][$index]["folderid"] 不匹配 $subarray["id"] 在您的示例数组中。

如果需要 folderidarray_search(),则需要修改此代码段。

关于php - 将多维php数组插入mysql表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42233170/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com