PHP:有没有办法看到像\n这样的“隐形”字符

php
2022-08-30 15:07:08

有没有办法像print_r()一样查看不可见的字符,如空格,换行符和其他非打印字符?

原因是我的阵列中有某种我看不见的字符和破坏东西。

Object Object
(
  [name] => name
  [numbers] => Array
      (
          [0] => 123

          [1] => 456
          [2] => 789
      )
   [action] => nothing
)

看到 [0] 和 [1] 之间的奇怪空格了吗?打印出 [0] 时,也会打印换行符。但是我没有在哪里为[0]分配换行符,所以我很困惑。

php中是否有内置函数,它就像它将显示或类似的?show_invisible(Object->numbers[0])123\n


答案 1

看到所有看不见的字符不仅,等等...很高兴看到ed版本,一切都很清楚:\r\njson_encode

$str = "...";
echo json_encode($str);

答案 2

您可以列出所有控制字符,但请尝试此操作以进行快速修复?

PHP - 打印带有控制字符的字符串

这是一种简单的修复方法,但您可能会将解决方案调整为数组上的函数回调以转换这些字符。str_replace("\n",'\n',$string)


推荐