在 php 中编码或转义斜杠 (/) 输入?

Encode or somthing to escape slash (/) input in php?

我在这里。

我想创建一个文件,我使用 title_input 作为 file_name,但是我在将文件创建到特定文件夹时遇到问题。

示例:

$file_name="Multi purpose Day/Night Security";

$myfile = fopen($_SERVER['DOCUMENT_ROOT']."/myweb/product/".$file_name.".php", "wb") or die("Unable to open file!");

错误:

警告:fopen(C:/Program Files/xampp/htdocs/myweb/product/Multi-Purpose Day/Night Security.php): 无法打开流:C:\Program Files\xampp\htdocs\myweb\admin\process\do_upload 中没有这样的文件或目录.php 第 28 行

无法打开文件!

您始终可以只对文件名进行编码以生成有效的文件名,然后在读取文件名后对其进行解码,这可能就像对前后文件名进行 base64 处理一样简单。

$filename = 'Multi purpose Day/Night Security';

// Raw filename
$filename = base64_encode($filename);

// Original filename
$filename = base64_decode($filename);