[請益] 在xampp下JSON會沒有回傳值
不好意思 不曉得如何在標題描述這個情況
在文章裡我會盡量寫清楚一點的
---
一開始我是利用 xampp 來建制環境
然後用 PHP 到 csv檔 撈資料傳 JSON 給網頁
大致的 PHP程式 如下
<?php
$key = strtolower($_GET["key"]);
if ($key == "") return;
//Do Something
$json_obj["List"] = $json_arr;
$json_str = json_encode($json_obj);
echo "$json_str";
?>
而為了測試 則直接先用網址的方法送 key 給 PHP 取資料
h ttp://127.0.0.1/search.php?key=keyword
但發現載入後整個頁面是空白的 似乎 PHP 完全沒有執行
用 Chrome 開 開發工具 去看好像也沒有錯誤訊息
不曉得會不會是我看的方法錯誤?
本來有想過會不會是撈的資料裡有中文的關係
但是把撈中文的地方去掉還是一樣的狀況
---
在網路上找了很久 不知道該用什麼關鍵字去找
後來換了個環境
發現同一支 PHP 在 Appserv 還有 Microsoft WebMatrix
是可以正常執行的...
直接用上面網址傳值進去的方式也正常
(正常執行指的是從 網頁端 傳值到 PHP 再到撈回資料 完全沒有問題
HTML PHP CSV完全沒有變動)
想問問各位有沒有碰過這個情況呢?
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.42.1.252
※ 文章網址: https://www.ptt.cc/bbs/PHP/M.1447947038.A.188.html
推
11/19 23:35, , 1F
11/19 23:35, 1F
$_GET應該是有值的 像那段網址 ?key=keyword
這邊的 keyword 就會讓 $_GET["key"] 取到值
再以 key 下去做後續處理
謝謝你
推
11/20 00:16, , 2F
11/20 00:16, 2F
JSON 不是一種格式嗎? 還要另外裝 extension 支援?
我會找找看有沒有相關資料的 謝謝你
→
11/20 00:56, , 3F
11/20 00:56, 3F
→
11/20 00:58, , 4F
11/20 00:58, 4F
是我會錯意了 Xampp 我是用官網最新版 照他的說明 PHP 應該是 5.6.14
應該不會是PHP版本太舊
---
至於 PHP json support 找不到哪裡可以查
但我有用一個小PHP試試看
<?php
$json_obj = array ("a"=>1,"b"=>2,"c"=>3,"d"=>4,"e"=>5);
$json_str = json_encode($json_obj);
echo "$json_str";
?>
直接執行以後 網頁顯示
{"a":1,"b":2,"c":3,"d":4,"e":5}
這表示是有成功的吧?
---
那篇文章我也有看到 但他是要抓取 mysql 資料出問題的
我是直接將資料放在 csv 去讀 也有試著先把抓中文的地方去掉
應該不會遇到同樣的問題
※ 編輯: flirmnave (114.42.1.252), 11/20/2015 01:18:31
感謝 zx4109 提到那篇 重看一遍得到靈感
將資料來源 csv 改成 UTF8格式 就可以了
然而此時顯示的中文會是 \u6797 這樣的
照著那篇 將
$json_str = json_encode($json_obj);
換成
$json_str = json_encode($json_obj,JSON_UNESCAPED_UNICODE);
這樣可以正常顯示中文了
---
所以是編碼的問題
不曉得為什麼 Appserv 和 Microsoft WebMatrix 沒有這個問題...
感謝熱心回答的兩位!!
※ 編輯: flirmnave (114.42.1.252), 11/20/2015 01:27:15
→
11/20 01:29, , 5F
11/20 01:29, 5F
→
11/20 01:33, , 6F
11/20 01:33, 6F
→
11/20 02:27, , 7F
11/20 02:27, 7F
→
11/20 02:27, , 8F
11/20 02:27, 8F
→
11/20 08:19, , 9F
11/20 08:19, 9F
推
11/20 19:35, , 10F
11/20 19:35, 10F
PHP 近期熱門文章
PTT數位生活區 即時熱門文章