Re: [請益] JSON編碼"{"編碼有問題

看板PHP作者 (我要幸福)時間9年前 (2014/10/27 13:13), 編輯推噓1(102)
留言3則, 2人參與, 最新討論串3/4 (看更多)
※ 引述《wild0921 (我要幸福)》之銘言: : ※ 引述《wild0921 (我要幸福)》之銘言: : : 想要請問各位PHP大人, : : 我日前建立一個webservice, 發生一個問題, : : 我試用php 5.3.2 版本 : : 建立一個array 用json_encode 產生 json string : : 讓其它網頁去接, : : echo 出來 畫面看起來是對的, 但是用json_decode 卻發生問題, : : 檢查發現主要原因, 是json string 一開始的 "{" 編碼有問題, 造成無法轉變成Object, : : 但我在webservice 那一頁自己 json_encode 再 json_decode 卻可以轉成Object : : 想要請問一下, 有沒有人碰過這種問題, 是用什麼方法解決? : : 感謝...... : 有用nodepad++檢查過, 檔案是utf-8 無Bom檔頭 : 產json那一個檔案也是utf-8 無Bom檔頭 : A.php 網頁內容(撈json的網頁): : $ch = curl_init(); : curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); : curl_setopt($ch, CURLOPT_URL, $str_url); : curl_setopt($ch, CURLOPT_POST, true); // 啟用POST : curl_setopt($ch, CURLOPT_POSTFIELDS, $_GET); : curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC); : curl_setopt($ch, CURLOPT_USERPWD, '帳號:密碼'); : curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); : curl_setopt($ch, CURLOPT_ENCODING, 'UTF-8'); : $output = curl_exec($ch); : B.php 網頁內容(產json string 的網頁) : die(json_encode($array)); : A.php的部分code是我用curl撈資料的方式, : 不過那邊json_decode($output); dump 出來是null, : 檢查之後 原因是json格式有問題, : 我把所有程式碼, 產新的檔案在重新上傳, : 有改善的是在B.php 那一頁dump出來, string檢查結果格式是 通過 的 : 但是在A.php var_dump($output); 貼到檢查json網頁 : 格式就會錯誤, 死在第一個大括號 : 所以想要請問有沒有人遇到過一樣的狀況, 然後提供一下解決方法? json_string:貼不上去, 所以給網址 http://wildhuang.blogspot.tw/p/jsonstring.html 我用來檢查json string的網址: http://www.freeformatter.com/json-formatter.html 以上 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 59.124.126.89 ※ 文章網址: http://www.ptt.cc/bbs/PHP/M.1414386791.A.1CA.html

10/27 13:36, , 1F
你貼的字串開頭有個 %EF%BB%BF 字元 (就是 BOM)
10/27 13:36, 1F

10/27 14:01, , 2F
不好意思, 可以分享一下是怎樣檢查出來的嗎?
10/27 14:01, 2F

10/27 14:02, , 3F
因為我選擇的檔案上面是顯示無bom開頭
10/27 14:02, 3F
文章代碼(AID): #1KJTHd7A (PHP)
討論串 (同標題文章)
文章代碼(AID): #1KJTHd7A (PHP)