php json_encode returning null
Array
(
[sEcho] => 1
[iTotalRecords] => 7521
[iTotalDisplayRecords] => 1
[aaData] => Array
(
[0] => Array
(
[0] => Nordic Capital Buys SiC Processing
[1] => 2010-06-21/nordic-capital-buys-sic-processing
[2] => PEHub Media
[3] => Business
[4] => completed
[5] => Nordic Capital has acquired a 70% stake in SiC Processing AG, a German industrial recycling company, from Frog Capital. No sale price was disclosed. SiC Processing’s founding family retains a 25% holding, while former lead investor Zouk Ventures retains a 5% stake.
[6] => Admin, China, Frog Capital, Germany, Italy, Iyad Omari, Manufacturing, Norway, PEHub Media, Photovoltaic Wafer Manufacturing, Renewable Energy, Semiconductor, United States
)
)
)
echo json_encode($myArr);
{"sEcho":"1","iTotalRecords":7521,"iTotalDisplayRecords":"1","aaData":[[" Nordic Capital Buys SiC Processing</a></div>"," 2010-06-21/nordic-capital-buys-sic-processing</div>","PEHub Media","Business","completed",null," Admin, China, Frog Capital, Germany, Italy, Iyad O开发者_开发百科mari, Manufacturing, Norway, PEHub Media, Photovoltaic Wafer Manufacturing, Renewable Energy, Semiconductor, United States]]}
Note the null in the middle of the string after completed
Why is this, what escape/manipulation do I need to perform in order to encode this?
I have tried, addslashes
From the manual:
Note that if you try to encode an array containing non-utf values, you'll get null values in the resulting JSON string. You can batch-encode all the elements of an array with the array_map function:
$encodedArray = array_map(utf8_encode, $myArr);
echo json_encode($encodedArray);
Actually it doesn't return null, http://codepad.org/A34KdUf5.
Maybe your PHP version doesn't support json_encode().
Works for me on 5.2.13. Ensure you're using at least PHP 5.2.0 and that PHP wasn't compiled with --disable-json. You may also want to check that error reporting (and/or logging) is enabled.
The simpler way is $store_name = utf8_encode(name_of_varaible)
but please make sure that your character set is ISO-8859-1.
精彩评论