作者jimshsu (jims)
看板Web_Design
标题[问题] 请问JSON的问题
时间Tue Nov 28 12:05:23 2006
最近用AJAX来接收资料一笔资料
使用者送出要求後...php从资料库取出档案..然後写成JSON格式
javascript再来读取它(所有资料都是UTF-8编码)
经过测试..我遇到了两个问题
1.JSON 是否有档案大小限制?
我里面有一些TEXT栏位..结果就会出现URL不正确
最後在我php那边用substr()函数撷取50个字元就正常
2.我的资料有 中文跟英文
我发现因为我用substr()...中文资料的部份末尾会变成'?'
结果当javascript读取该栏位(如:json[0].abstract)
就会出现"无法判定字串常数的结尾"
请问这部分我该怎麽处理?
片段php程式
{
packageId:"<?=$row["packageId"] ?>",
title:"<?=$row["title"] ?>",
abstract:"<?=substr($row["abstract"],0,50) ?>",
},
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 134.208.7.229
1F:→ superGA:中文一个字好像要算两个byte 不然会截一半变成'?' 11/28 12:26
2F:→ jimshsu:这里要怎麽判定不会截到半个字? 11/28 13:32
3F:→ jimshsu:I get it......用mb_strimwidth 11/28 14:41
4F:→ jimshsu:大部分都正常~但是还是些会错误..但我不知道是什麽字造成 11/28 15:30
5F:→ jimshsu:既然都是UTF-8为何还有这种问题呢? 11/28 15:30
6F:推 alpe:UTF-8 一个中文字 不见得是 2byte 11/28 15:50
7F:推 alpe:在BIG-5 中文一个字是2byte 没错. 11/28 15:53
8F:→ alpe:substr 是算 byte长度的 11/28 15:54
9F:推 suckerlove:mb_substr 11/28 19:51
10F:嘘 jimshsu:问题都解了...php urlencode.->>.javascript urldecode 11/29 13:55