为什么:警告:printf():第59行的参数太少

时间:2014-03-03 09:26:20

标签: php html audio directory printf

我试图从他们的目录中获取所有文件时,我的php代码出错,然后为他们创建html链接,我不明白为什么。

这是错误: 警告:printf():第59行的C:\ Users \ Ryan \ Documents \ Web Development \ xampp \ htdocs \ muzik \ player.php中的参数太少

第59行是:     printf("<li><a href='mp3/%s'>%s</a></li>", htmlentities($file->getBasename()));

以下是代码:

`echo '<ul id="playlist">';
foreach( new DirectoryIterator('mp3/') as $file) {
    if( $file->isFile() === TRUE) {
        printf("<li><a href='mp3/%s'>%s</a></li>", htmlentities($file->getBasename()));
    }
}
echo '</ul>';`

1 个答案:

答案 0 :(得分:5)

您有两个%s,因此printf需要2个参数,而您只需要一个。

你可能想要使用这个:

$filename = htmlentities($file->getBasename();
printf("<li><a href='mp3/%s'>%s</a></li>", $filename, $filename);