将json字符串中的文件路径发送到PHP codeigniter

Old*_*org 2 php json codeigniter

我必须通过发送文件路径。一个json字符串到我在codeigniter中的控制器

我已经修改了codeigniters配置以接受json字符串作为参数

例:

www.mysite.com/controller/function/{"foo":"bar","hello":"word“}

这很好。

但是现在我想传递这样的文件路径

www.mysite.com/controller/function/ {“路径”:“ D:\ my \ path \ to \ file.txt”,“ foo”:“ bar”}

当我对发送到控制器中的函数的参数进行urldecode时,我得到一个漂亮的字符串,看起来像这样

{“ path”:“ D:\ my \ path \ to \ file.txt”,“ foo”:“ bar”}

当我尝试json_decode这我得到

空值

谁能帮我这个?

Mar*_*c B 6

由于它是JSON,因此您必须考虑到JSON解析器会将目录分隔符视为转义符。JSON 知道您要传递路径。只会看到很多不必要的逃生。JSON必须在语法上有效,这意味着:

{"path":"D:\\my\\path\\to\\file.txt","foo":"bar"}
Run Code Online (Sandbox Code Playgroud)

注意加倍的反斜杠。还要注意,在Windows上,PHP足够聪明,可以接受正斜杠作为路径分隔符,并且会根据需要为您自动进行转换。d:/my/path/to/file.txt也会一样好。