在PHP中将斜杠显示为正斜杠

问题描述

| 我的服务器上有一个要访问的文件文件名是“ 0” 但是在我的数据库中,它存储为
ken\'s book.doc
(我已经解决了反斜杠问题,但是访问服务器上以前上传文件仍然有问题。 我使用addslashes添加反斜杠,但它显示为:
ken/\'s book.doc
(即正斜杠而不是反斜杠。 我用过:
str_replace(\"\'\",\"\\\'\",$filename);
但它显示为正斜杠。 我怎样才能解决这个问题? 谢谢 编辑 额外信息:我将新值用作链接的一部分。那是:
<a href=\"<?PHP echo str_replace(\"\'\",$filename);?>\">View</a>
    

解决方法

        如果您的文件名在磁盘上包含反斜杠,我将首先解决该问题。您的第二个问题是将文件名存储到数据库中时似乎没有使用ѭ5((为什么文件名最终没有反斜杠)。
addslashes
btw本身不会添加正斜杠。您故事的那部分是不真实的。并再次删除它们,您将不需要古怪的
str_replace
通话,而只需
stripslashes
。 实际的问题(在您编辑后)原来是html链接。这仅仅是因为浏览器习惯将url中的反斜杠转换为正斜杠。为了防止这种情况,请适用ѭ9
 <a href=\"<?=urlencode(stripslashes($filename));?>\">View</a>