2014-03-03 27 views
0

我試圖從他們的目錄中獲取所有文件,然後爲他們創建html鏈接,我不明白我的php代碼中出現錯誤爲什麼。爲什麼有:警告:printf():59行太少參數

以下是錯誤: 警告:printf()函數:用C參數太少:\用戶\瑞安\文檔\ Web開發\ XAMPP \ htdocs中\ MUZIK \ player.php上線59

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

**如何更清晰並警告需因爲你沒有理解它?**計算參數,使用你的手指。 2個手指用於'%'*(佔位符)*!= 1個手指用於參數。 – CodeAngry

回答

4

你有兩個%s,所以printf預計2個論點,你只放一個。

您可能需要使用此一:

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

謝謝,我不能相信我錯過了。 – Kinexd

+0

不客氣。如果它符合您的需求,請不要忘記接受答案。 –

+0

是的,我會:)我只需要等待計時器,所以它讓我。 – Kinexd