当我在PHP中使用json_encode
函数以json格式对Object进行编码时,它会将输出中的url更改为具有http:\/\/example.com\/apps\/images\/image01.jpg
等转义字符的字符串,但C#会返回一个url,即{{ 1}}并且不会添加任何转义字符。由于我将实现与旧的PHP Web服务相同的Web服务,我想知道如何将C#中的url字符串编码为与PHP字符串相同。
答案 0 :(得分:1)
你不需要做任何事情。如果您从PHP
和C#
编写字符串即文件(或控制台),您将获得相同的结果,而不会更改任何内容。
如果您真的想要/
使用\/
方法替换String.Replace()
:
string likePhp = strCSharp.Replace("/", @"\/");
答案 1 :(得分:0)
您不应该需要转义斜杠,因此请告诉PHP不要使用JSON_UNESCAPED_SLASHES
转义它们。为什么在不需要时尝试破解C#JSON以逃避斜杠。
echo json_encode('http://example.com/apps/images/image01.jpg', JSON_UNESCAPED_SLASHES);
收率:
http://example.com/apps/images/image01.jpg