【发布时间】:2019-10-02 16:30:00
【问题描述】:
我正在对不是我构建的 api 进行 api 调用,响应是一个对象数组,但它实际上是一个字符串,所以我不能用它做任何事情
我尝试修改 php 文件,但我从未对它做过任何事情,所以我不知道
try {
$stmt = $conn->prepare($sql);
$stmt->execute(array('partnumber'));
$stmt->execute();
$array = $stmt->fetchALL();
sort($array);
//make Json file
echo '[';
foreach ($array as $key => $row) {
$last = ($key !== count($array) - 1) ? "} , " : " }]";
echo '{partnumber: "' . $row['partnumber'] . '", ';
echo 'image: "/media/pic/' . $row['partnumber'] . '.jpg", ';
echo 'retailPrice: "' . $row['retail'] . '", ';
echo 'use: "' . $row['use'] . '"';
echo $last;
}
} catch (Exception $e) {
echo $e->getMessage();
}
期望:
[{
partnumber: "12355",
image: "/media/pic/111112W BN.jpg",
retailPrice: "20.00",
use: "living"
},
{
partnumber: "125556665",
image: "/media/pic/111112W WBZ.jpg",
retailPrice: "20.00",
use: "laundry, living"
},
{
partnumber: "12355666666",
image: "/media/pic/111122 BK.jpg",
retailPrice: "0.00",
use: "bedroom, closet, entry"
},
{
partnumber: "1233333333",
image: "/media/pic/111122 BN.jpg",
retailPrice: "0.00",
use: "bedroom, closet, entry, hall, laundry, living"
}]
结果:
"[{partnumber: "10A19M60WCL", image: "/media/pic/10A19M60WCL.jpg", retailPrice: "0.00", use: "&"} , {partnumber: "10L27A19M8W", image: "/media/pic/10L27A19M8W.jpg", retailPrice: "0.00", use: "&"} , {partnumber: "10L27A19M8WD", image: "/media/pic/10L27A19M8WD.jpg", retailPrice: "0.00", use: "&"} , {partnumber: "10L27B11C5W", image: "/media/pic/10L27B11C5W.jpg", retailPrice: "0.00", use: "&"} , {partnumber: "10L27ST19M6W", image: "/media/pic/10L27ST19M6W.jpg", retailPrice: "0.00", use: "&"} , {partnumber: "10L30GU104W", image: "/media/pic/10L30GU104W.jpg", retailPrice: "0.00", use: "&"} , {partnumber: "111112W BN", image: "/media/pic/111112W BN.jpg", retailPrice: "20.00", use: "bedroom, closet, entry, hall, laundry, living"} , {partnumber: "111112W WBZ", image: "/media/pic/111112W WBZ.jpg", retailPrice: "20.00", use: "bedroom, closet, entry, hall, laundry, living"}]"
【问题讨论】:
-
对于 JSON - 您的字段名称也需要用引号括起来 [{"partnumber": "10A19M60WCL"。您还应该使用
json_encode()来构建 JSON,因为手动构建可能会引入编码问题。 -
是的,我将这个数组带入一个反应应用程序的状态,json 方法是前端吗?
-
@nigelRen 好的,完成了,但数组仍然用引号引起来:(
-
我没有写这个 php 文件,我从未接触过 php,但我可以访问该文件,所以对我来说它看起来像中文@NigelRen 我没有连接点