从字符串php删除文本

时间:2013-05-08 10:44:08

标签: php mysql

我有一个名为'filename'的表。我尝试在它的循环中输出<a>标签,如下所示:

<?php

while($sermon = mysql_fetch_assoc($sermonsQ)) {
    echo '<a href="admin/'. $sermon ['filename'] . '">';
    echo 'download</a></td>';
}

当前的问题是,$sermon['filename']包含像path/test.mp3这样的主要路径。但我只需要没有路径的文件名,如test.mp3。我怎么能这样做?

3 个答案:

答案 0 :(得分:5)

使用basename()。它将返回没有前导路径的文件名:

basename($sermon ['filename'])

答案 1 :(得分:0)

您可以使用path_info()

<?php
$path_parts = pathinfo('/www/htdocs/inc/lib.inc.php');

echo $path_parts['dirname'], "\n";
echo $path_parts['basename'], "\n";
echo $path_parts['extension'], "\n";
echo $path_parts['filename'], "\n"; // since PHP 5.2.0
?>

同样mysql_ *函数被删除,因此你不应该将它们用于例如PDO或mysqli

答案 2 :(得分:0)

<?php

while($sermon = mysql_fetch_assoc($sermonsQ)) {
    $filename = explode('/',$sermon ['filename']);
    echo '<a href="admin/'. $filename[1] . '">';
    echo 'download</a></td>';
}