मैंने बहुत जल्दी परीक्षण कर लिया है:
$a = array(
'id' => 152,
'another' => 'test',
'ananother' => 456,
);
$json = json_encode($a);
echo $json;
ऐसा लगता है जैसे आप क्या वर्णन करते हैं, अगर मैं गलत नहीं हूँ?
और मुझे आउटपुट के रूप में मिल रहा है:
{"id":152,"another":"test","ananother":456}
तो, इस मामले में, पूर्णांक स्ट्रिंग में परिवर्तित नहीं हुए हैं।
फिर भी, यह PHP के उस संस्करण पर निर्भर हो सकता है जिसका हम उपयोग कर रहे हैं: PHP के संस्करण के आधार पर, json_encode संबंधित बगों को ठीक किया गया है ...
यह परीक्षण PHP 5.2.6 के साथ किया गया है; मैं PHP 5.2.9 और 5.3.0 के साथ एक ही बात कर रहा हूं; मेरे पास एक और 5.2.x संस्करण नहीं है, जिसके साथ परीक्षण किया जा सकता है :-(
PHP का कौन सा संस्करण आप उपयोग कर रहे हैं? या क्या आपका परीक्षण-मामला आपके द्वारा पोस्ट किए गए उदाहरण से अधिक जटिल है?
शायद http://bugs.php.net/ पर एक बग रिपोर्ट संबंधित हो सकती है? उदाहरण के लिए, बग # 40503: json_encode पूर्णांक रूपांतरण PHP के साथ असंगत है ?
हो सकता है कि बग # 38680 आपको भी रुचा दे, btw?