我问一个问题关于bigints昨日这是善意的回答。 不过,我一直在观察了一些奇怪的行为,并想明白是怎么回事。
在我的PHP我有我送回到它使用它一个JavaScript的Web客户端程序的数组。
在PHP
sendBack = null;
sendBack[0]['TimeStamp'] = $Time; // A bigint got from a mysql table milliseconds from 1970
sendBack[0]['Text'] = $Message; // A varchar message got back from mysql
// I am guessing at this point you have worked out this is a text-chatroom thing going on
sendBack[1]['TimeStamp'] = 0; // A zero indicates an admin issue - note its an int but a small one
sendBack[1]['Text'] = $MessageAdmin;
// And I pack it up to send back
echo json_encode($sendBack);
在JS我解开它的使用方法:
var json = eval('(' + data + ')');
问题是,在JS的0索引时间戳被当作字符串,但索引1时间戳被视为一个int。
从教育观点没有人知道是怎么回事?