如何在PHP中限制tempnam函数生成的文件类型

avatar
作者
猴君
阅读量:0

在PHP中,tempnam函数可以用来创建一个唯一的临时文件名。如果想要限制tempnam函数生成的文件类型,您可以使用如下方法:

  1. 使用正则表达式过滤文件名:您可以使用正则表达式来限制tempnam函数生成的文件名只能包含特定的字符或者匹配特定的文件类型。例如,您可以使用preg_match函数来检查文件名中是否包含特定的文件扩展名,如果不包含则重新生成文件名。
$filename = tempnam('/tmp', 'prefix'); while (!preg_match('/\.txt$/', $filename)) {     $filename = tempnam('/tmp', 'prefix'); } 
  1. 手动检查文件类型:您可以手动检查tempnam函数生成的文件名是否符合您的要求,如果不符合则重新生成文件名。
$filename = tempnam('/tmp', 'prefix'); if (substr($filename, -4) !== '.txt') {     $filename = tempnam('/tmp', 'prefix'); } 
  1. 自定义函数生成文件名:如果您需要更加复杂的文件名限制,您可以编写一个自定义的函数来生成文件名,以确保生成的文件名符合您的要求。
function generateTempFilename($prefix, $extension) {     $filename = tempnam('/tmp', $prefix);     return $filename . '.' . $extension; }  $filename = generateTempFilename('prefix', 'txt'); 

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!