从 php 中的文件目录中删除文件扩展名

remove file extensions from a file directory in php

我正在做一个画廊,并使用 php 来显示图像,而无需对每张图像进行硬编码。我使用以下方法获取图像:

<?php
$dir="image/";
//open dir
if ($opendir=opendir($dir))
{
    //readdir

    while($file=readdir($opendir))
    {
        if ($file!="."&&$file!="..")
    echo "
    <div id='item' class='grid-item'>
    <a href='$dir/$file'>
    <div id='masks' class='mask'></div>
    <div id='title' class='text'>$file</div>
    <img src='$dir/$file'>
    </a>
</div>

";
    }
 }
 ?>

画廊使用 jquery 作为 masonry 画廊插件。

但是文件扩展名与文件名一起显示。我不想要扩展名。我尝试了很多方法,但它们不适用于这种情况。如何隐藏它以及可以对代码进行哪些更改才能使其发生?

您可以使用 pathinfo:

<?php

$dir="image/";
//open dir
if ($opendir=opendir($dir))
{
    //readdir

    while($file=readdir($opendir))
    {
        if ($file!="."&&$file!="..")
        {
            $filename = pathinfo($file, PATHINFO_FILENAME);
            echo "
    <div id='item' class='grid-item'>
    <a href='$dir/$file'>
    <div id='masks' class='mask'></div>
    <div id='title' class='text'>$filename</div>
    <img src='$dir/$file'>
    </a>
</div>

";
        }

    }
}

要通过此方法获取文件名,您必须使用 PHP > 5.2,无论如何您可能应该使用它。