PHP中有什么方法可以根据文件名的变量打开文件吗?基本上我想要的是:
$file = file('data.txt');
$needle = array("one", "two", "three");
$haystack = array("one", "three");
foreach($needle as $value){
$pos = strpos($haystack, $value);
if($pos !== false){
$filename = "$value.txt";
file_put_contents($filename, $file);
}
$needle 的值是 .txt 文件的名称。它一直工作到 file_put_contents。$filename 无效,我已经到处寻找解决方案并尝试了我能想到的一切。我想加载数组值,说“一个”,扩展名为 .txt 作为文件名,具体取决于是否在大海捞针中找到了该值。有没有办法在不为每个文件名做 if 语句的情况下做到这一点?如果可能的话,我宁愿用循环来处理它。
编辑以交换参数。
编辑,新代码:
$data = file_get_contents('data.txt');
$needle = array("one", "two", "three");
$haystack = array("one", "three");
$files = array_intersect($needle, $haystack);
foreach ($files as $value) {
$newfilename = "$value.txt";
var_dump($newfilename);
file_put_contents($newfilename, $data);
}