JSON 數字:字串還是數字?
PHP 的 json_encode 函數因其傾向於將數字編碼為字串而聞名,這會導致在JavaScript。例如,陣列 { "id": "3", ... } 在 JavaScript 中被解釋為字串,導致數值運算失敗。
為了解決這個問題,PHP 提供了一個解決方案:JSON_NUMERIC_CHECK旗幟。在 PHP 5.3.3 中引入,此標誌可確保數字自動轉換為適當的 JSON 表示形式。
考慮以下用法:
$arr = array( 'row_id' => '1', 'name' => 'George' ); echo json_encode( $arr, JSON_NUMERIC_CHECK );
這將產生{ "row_id":1 ,"name":"George" },其中像「1」這樣的數字被正確地視為數值。
透過使用JSON_NUMERIC_CHECK 標誌,開發者可以防止 json_encode 誤解數字並確保與 JavaScript 數字運算的兼容性。
以上是PHP 中的 JSON 數字:字串還是數字?的詳細內容。更多資訊請關注PHP中文網其他相關文章!