如何从文件名中删除目录字符串

时间:2013-01-22 02:00:39

标签: php html

  

可能重复:
  How to get file name from full path with PHP?

echo '<td width="11%" class="imagetd">'. ( ( empty ($arrImageFile[$key]) ) ? "&nbsp;" : htmlspecialchars( is_array( $arrImageFile[$key] ) ? implode(",", $arrImageFile[$key]) : $arrImageFile[$key] ) ). '</td>' . PHP_EOL;
echo '<td width="11%" class="videotd">'. ( ( empty ($arrVideoFile[$key]) ) ? "&nbsp;" : htmlspecialchars( is_array( $arrVideoFile[$key] ) ? implode(",", $arrVideoFile[$key]) : $arrVideoFile[$key] ) ). '</td>' . PHP_EOL;
echo '<td width="11%" class="audiotd">'. ( ( empty ($arrAudioFile[$key]) ) ? "&nbsp;" : htmlspecialchars( is_array( $arrAudioFile[$key] ) ? implode(",", $arrAudioFile[$key]) : $arrAudioFile[$key] ) ). '</td>' . PHP_EOL;

在上面的代码中,我有2个表列,它们取决于表格单元格中是否有内容或显示信息。现在,您可以看到三列是ImageVideoAudio。现在,这些列在其表格单元格中显示相关的文件名。以下是它们的显示方式:

  • 所有图像文件在文件名前包含字符串ImageFiles/,例如ImageFiles/Lighthouse.png
  • 所有视频文件在文件名前包含字符串VideoFiles/,例如VideoFiles/sample_mpeg.mp4
  • 所有音频文件在文件名前包含字符串AudioFiles/,例如AudioFiles/Music.mp3

正如您所看到的,每个文件都包含文件名之前的目录字符串。但我想要做的是,对于每个列和每个文件,删除相对目录字符串,换句话说,从每个文件名的整个字符串中删除ImageFiles/AudioFiles/VideoFiles/因为我不希望用户知道目录的名称。但是怎么做呢?

3 个答案:

答案 0 :(得分:4)

PHP有一个函数:basename

答案 1 :(得分:3)

使用basename()

echo basename($arrImageFile[$key]);

答案 2 :(得分:0)

搜索/的最后一个索引并执行子字符串以提取其后的所有内容。