gpt4 book ai didi

php - 如何打开名称中包含特殊字符的文件

转载 作者:搜寻专家 更新时间:2023-10-31 22:00:20 26 4
gpt4 key购买 nike

在 PHP 中,如何打开名称中包含特殊字符的文件?

名称类似于iPad|-5542fa5501f31.log

根据另一个论坛,我试过:

$logid = str_replace(" ", "\x20", $_GET['logid']);
$logid = str_replace("|", "\x7C", $logid);

去按摩名字,不过我也不管用。

我也试过了:

$dst_file = escapeshellarg($dst_file);

当然,一开始就是直的:

$logid = $_GET['logid'];

初始文件是由 Linux 系统上的 PHP 脚本创建的。我很困惑为什么 PHP 脚本可以写这样的文件名,但不能打开它进行阅读。

这是我当前的代码:

$logid = str_replace(" ", "\x20", $_GET['logid']);
$logid = str_replace("|", "\x7C", $logid);
$logdate = str_replace("-", "/", $_GET['date'])."/";
$dst_file = $uploads_dir.$logdate.$logid.'.log';

// read the data from the log file
echo "<pre>\n";
if (file_exists($dst_file)) {
$file_handle = fopen($dst_file, "r");
while (!feof($file_handle)) {
$line = fgets($file_handle);
if (strlen($line) < 3) continue;
echo $line;
}
fclose($file_handle);
} else {
echo $dst_file." does not exist\n";
}
echo "</pre>\n";

最佳答案

我唯一发现的是重命名文件然后打开。问题是没有 PHP 函数,所以我尝试了系统命令。没有工作。 ftp RNTO 命令将重命名它。但是在保存文件的时候过滤掉“特殊字符”会好很多。

关于php - 如何打开名称中包含特殊字符的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30130826/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com