PHP 读取 MySQL 数据转 JSON 后,URL 中的斜杠变为反斜杠,如何解决?
php 读取 mysql 数据后,json_encode 中的 url 中的斜杠变为反斜杠
在读取 mysql 中包含 url 的数据并将其转换为 json 时,有时会发现斜杠(/)被替换为反斜杠(/)。解决此问题的方案如下:
代码中读取图像地址后,添加以下代码行:
$array = str_replace("/", "/", json_encode($arr));
上面代码的作用是将 json 字符串中的所有 "/" 替换为 "/", 从而还原原始 url。
立即学习“PHP免费学习笔记(深入)”;
修改后的完整代码示例:
while ($row = mysql_fetch_array($result)) { $image = iconv("GBk", "UTF-8//IGNORE", $row['image']); $tmp = array( 'goodID' => $row['ID'], 'goodName' => $row['name'], 'goodPrice' => $row['price'], 'memo' => $row['memo'], 'image' => $image, 'companyID' => $row['companyID'], 'companyName' => $row['company'], 'companyAdd' => $row['address'], 'companyPhone' => $row['phone'] ); array_push($arr, $tmp);}mysql_close($con);// 替换反斜杠$array = str_replace("\/", "/", json_encode($arr));return $array;