douzhong8856 2013-09-03 10:13
浏览 40
已采纳

PHP json_encode分配null而不是值?

I have a CSV file that looks like this:

http://ideone.com/YWuuWx

I read the file and convert it to array, which works completely fine, but then I jsonize the array - but json_encode doesnt put the real values - it puts null - here is the dump of the array and jsonized array:

http://jave.jecool.net/stackoverflowdemos/csv_to_json_to_arraydump.php

I convert like this: $php_array= json_encode($json_array,JSON_PRETTY_PRINT);

anyone knows what might cause the problem?

EDIT: I think ther is like 90% chance that its caused by the latin1 characters - anyone knows the best workaround?

  • 写回答

1条回答 默认 最新

  • drgmszo076956 2013-09-03 10:49
    关注

    Assuming that it is in fact an encoding error, and that your data is actually encoded in some ISO-8859 variant (I'm guessing latin2 rather than latin1 based on your use of LATIN SMALL LETTER R WITH CARON), and that it is CONSISTENTLY so, you can use iconv() to re-encode it as UTF-8 before doing json_encode():

    $foo = iconv('ISO-8859-2', 'utf8', $foo);
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 微信会员卡等级和折扣规则
  • ¥15 微信公众平台自制会员卡可以通过收款码收款码收款进行自动积分吗
  • ¥15 随身WiFi网络灯亮但是没有网络,如何解决?
  • ¥15 gdf格式的脑电数据如何处理matlab
  • ¥20 重新写的代码替换了之后运行hbuliderx就这样了
  • ¥100 监控抖音用户作品更新可以微信公众号提醒
  • ¥15 UE5 如何可以不渲染HDRIBackdrop背景
  • ¥70 2048小游戏毕设项目
  • ¥20 mysql架构,按照姓名分表
  • ¥15 MATLAB实现区间[a,b]上的Gauss-Legendre积分