Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/270.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/api/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Linkedin API中的换行符 带回车符的Linkedin API标题_Php_Api_Share_Linkedin_Article - Fatal编程技术网

Php Linkedin API中的换行符 带回车符的Linkedin API标题

Php Linkedin API中的换行符 带回车符的Linkedin API标题,php,api,share,linkedin,article,Php,Api,Share,Linkedin,Article,我正在使用Linkedin标题上的回车符,通过Linkedin共享文章API共享帖子。但在通过API共享时,它会返回如下错误 将请求正文解析为JSON时出错非法的无引号字符((CTRL-CHAR,代码10)):必须使用反斜杠进行转义,以包含在[Source:(com.linkedin.data.ByteString$ByteArrayVectorInputStream]的字符串值中\n 是否有办法解决此问题并在标题中传递回车。请帮助 我尝试使用“\n”替换回车符,因为它使用反斜杠显示为escap

我正在使用
Linkedin标题
上的回车符,通过
Linkedin共享文章API
共享帖子。但在通过API共享时,它会返回如下错误

将请求正文解析为JSON时出错非法的无引号字符((CTRL-CHAR,代码10)):必须使用反斜杠进行转义,以包含在[Source:(com.linkedin.data.ByteString$ByteArrayVectorInputStream]的字符串值中\n

是否有办法解决此问题并在标题中传递回车。请帮助

我尝试使用“\n”替换回车符,因为它使用反斜杠显示为escape,但对我无效

$msg='test1 测试2

    test3';
$msg=preg_replace(“/[^A-Za-z]/”、“\n”、$msg)

我已经尝试了上述方法,但我再次从Linkedin API得到了相同的错误响应

预期结果是共享带有如下标题的帖子

“测试1 测试2

    test3';
测试3“

但它不会向用户帐户发送帖子,而是会出现如下错误

将请求正文解析为JSON时出错非法的无引号字符((CTRL-CHAR,代码10)):必须使用反斜杠进行转义,以包含在[Source:(com.linkedin.data.ByteString$ByteArrayVectorInputStream]的字符串值中\n


要在字符串中插入文字
\n
,您需要转义反斜杠;否则PHP理解
\n
符号,并将其更改为实际的换行符,这是您试图避免的。因此,在代码段中写入
“\\n”
而不是
“\n”


但是@04FS的评论很贴切:你不应该自己生成json格式!把你的数据放在一个数组中,不用担心转义的换行符之类的,用
json\u encode
来序列化它。

试着在你的字符串中放一个实际的反斜杠-n;当你写
“\n”
,php将其转换为换行符,API将看到与以前相同的内容。(例如,在代码中写入
“\\n”
,以插入真正的反斜杠。)向我们展示您的代码,您实际在何处创建JSON。您是手动创建的吗?然后停止,这不是一件聪明的事情-创建适当的数据结构,然后在其上使用
JSON\u encode
。@alexis非常感谢。我已经尝试了您的技巧,效果非常好。欢迎您。这不是一个技巧,它是常规的P生成api要求的语法。我已将其作为答案写出来,请“接受”它以将此问题标记为已解决。(然后请注意@04FS所写的内容!)