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

Kin*_*exd 0 html php directory audio printf

我试图从他们的目录中获取所有文件,然后为他们创建HTML链接,我的PHP代码中出现错误,我不明白为什么.

这是错误:警告: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>';`
Run Code Online (Sandbox Code Playgroud)

Nug*_*get 5

你有两个%s,所以printf期望2个参数而你只放一个.

你可能想要使用这个:

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