PHP / JSON-返回大字符串导致错误

时间:2018-12-13 10:43:51

标签: php json laravel

我正在尝试将PDF文件转换为原始文本。但是,实际上这可以正常工作-我无法使用JSON返回转换后的文本。

这是我将PDF转换为文本的方式:

fa = open(template_addr + '/mail_html.html', 'w')
email_templates_instance=EmailTemplates.objects.create(templates=File(fa)) 

现在,如果我像这样在普通JSON中返回$text = (new Pdf('/usr/local/bin/pdftotext')) ->setPdf(storage_path() . '/app/temp_files/' . $name) ->text(); $text = iconv('latin5', 'utf-8', $text); //Convert foreign characters

$text

我收到一条return response()->json([ 'result' => $text ], 200); 消息。

但是,如果我将字符串限制为例如100个字符,则可以正常工作:

Server Error

返回:

return response()->json([
       'result' => str_limit($text, 100)
], 200);

如何获取返回的全部文本?原始的PDF文件长达2页。

1 个答案:

答案 0 :(得分:1)

这听起来像JSON遇到编码错误。

替换:

 $text = iconv('latin5', 'utf-8', $text); //Convert foreign characters

使用:

$text = mb_convert_encoding($text, 'UTF-8', 'UTF-8');  //Force the UTF-8 encoding.

希望有帮助。