【问题标题】:PHP - directory listing script - display file names WITHOUT file extensions [duplicate]PHP - 目录列表脚本 - 显示没有文件扩展名的文件名[重复]
【发布时间】:2019-12-26 00:09:25
【问题描述】:

帮助修改此脚本以隐藏列表中的文件扩展名。点击列表中的链接必须像以前一样工作 - 即打开

function display_block( $file )
{
    global $ignore_file_list, $ignore_ext_list, $force_download;

    $file_ext = getFileExt($file);
    if( !$file_ext AND is_dir($file)) $file_ext = "dir";
    if(in_array($file, $ignore_file_list)) return;
    if(in_array($file_ext, $ignore_ext_list)) return;

    $download_att = ($force_download AND $file_ext != "dir" ) ? " download='" . basename($file) . "'" : "";

    $rtn = "<div class=\"block\">";
    $rtn .= "<a href=\"$file\" class=\"$file_ext\"{$download_att}>";
    //$rtn .= " <div class=\"img $file_ext\">&nbsp;</div>";
    $rtn .= "   <div class=\"name\">\n";
    $rtn .= "       <div class=\"file\">" . basename($file) . "</div>\n";
    //$rtn .= "     <div class=\"date\">Size: " . format_size($file) . "<br />Last modified: " .  date("D. F jS, Y - h:ia", filemtime($file)) . "</div>\n";
    $rtn .= "   </div>\n";
    $rtn .= "   </a>\n";
    $rtn .= "</div>";
    return $rtn;
}

【问题讨论】:

  • 您已经尝试过哪些没有按预期工作的方法?请edit您的问题并分享您的尝试。

标签: php directory


【解决方案1】:

您可以使用pathinfo 函数获取不带扩展名的文件名,如下所示:

function display_block($file) {
    global $ignore_file_list, $ignore_ext_list, $force_download;
    $file_ext = getFileExt($file);
    if (!$file_ext AND is_dir($file))
        $file_ext = "dir";
    if (in_array($file, $ignore_file_list))
        return;
    if (in_array($file_ext, $ignore_ext_list))
        return;

    $filePathInfo = pathinfo($file); 
    $download_att = ($force_download AND $file_ext != "dir" ) ? " download='" . basename($file) . "'" : "";

    $rtn = "<div class=\"block\">";
    $rtn .= "<a href=\"$file\" class=\"$file_ext\"{$download_att}>";
//$rtn .= " <div class=\"img $file_ext\">&nbsp;</div>";
    $rtn .= "   <div class=\"name\">\n";
    $rtn .= "       <div class=\"file\">" . $filePathInfo['filename'] . "</div>\n";
//$rtn .= "     <div class=\"date\">Size: " . format_size($file) . "<br />Last modified: " .  date("D. F jS, Y - h:ia", filemtime($file)) . "</div>\n";
    $rtn .= "   </div>\n";
    $rtn .= "   </a>\n";
    $rtn .= "</div>";
    return $rtn;
}

basename 函数在我们确定文件扩展名时使用。如果您确定文件扩展名相同,那么您也可以按如下方式使用它:

$fileName = basename($file, ".php"); 

希望对你有帮助!!

【讨论】:

  • 完美!非常感谢您的快速帮助:)
猜你喜欢
  • 1970-01-01
  • 2011-12-28
  • 2018-02-05
  • 1970-01-01
  • 2020-12-15
  • 2018-04-29
  • 1970-01-01
  • 1970-01-01
  • 2011-02-20
相关资源
最近更新 更多