Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/252.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 当文件名包含'/';性格_Php_File Rename - Fatal编程技术网

Php 当文件名包含'/';性格

Php 当文件名包含'/';性格,php,file-rename,Php,File Rename,我尝试在php中使用rename(),但问题是我无法重命名文件,因为文件名包含“/”,因此它被视为url的一部分 以下是我的代码片段: rename("/home/yashshah/Desktop/check","/home/yashshah/Desktop/a/b"); 我想将我的“check”文件重命名为“a/b”,但无法这样做。 我也尝试过使用编码,但随后该文件被重命名为a%2Fb(因为%2F代表“/”),而不是“a/b” 有什么建议吗 foreach ($_FILES as $file

我尝试在php中使用rename(),但问题是我无法重命名文件,因为文件名包含“/”,因此它被视为url的一部分

以下是我的代码片段:

rename("/home/yashshah/Desktop/check","/home/yashshah/Desktop/a/b");
我想将我的
“check”
文件重命名为
“a/b”
,但无法这样做。 我也尝试过使用编码,但随后该文件被重命名为
a%2Fb
(因为%2F代表“/”),而不是
“a/b”

有什么建议吗

foreach ($_FILES as $file) {
 $file['name'] = str_replace("/", "%2F" , $file['name']);
}

我认为重命名时允许使用“/”,但请检查桌面目录中可用的/a/b文件夹否…“/”将被理解为文件路径扩展名而不是名称!是的,正是这样,您必须将/a/b目录插入到您的桌面目录中。我不想要任何a/b目录…我想将其重命名为a/b…我明白您的意思,但如何将文件名作为输入?我的意思是,在执行时,应根据需要替换文件名。替换的更改应同时反映在文件名中。