2016-10-01 95 views
0

我有一個博客/ vlog,我也可以在Spotify上分享我的聽覺習慣。 我使用了一個名爲剪斷(可在Github上)的小片段,獲取我的Spotify的流,我的數據創建文本文件(如曲目,藝術家,專輯和的TrackID)當文本文件爲空時隱藏回聲輸出

現在我想添加在我的網頁的鏈接我使用的變量$我爲的TrackID

發揮實際的軌道,我想出了這個代碼感謝一些谷歌上搜索和提示/ TRIX頁:

<?php 
$myfile = fopen("Snip_TrackId.txt", "r") or die("Die!"); 
echo "<a href='https://open.spotify.com/track/"; 
echo fread($myfile,filesize("Snip_TrackId.txt")); 
echo "'target='_blank'><img width='18px' height='18px' title='Open with Spotify' src='np_spotify.png'><a/> <- Listen"; 
fclose($myfile); 
?> 

這一切正常,但是當我關閉Spotify或暫停,文本文件自行清空,我的信息框變成空白,這就是它的方式:)。 B ut ......用我上面的代碼,鏈接,圖像和文本「< - Listen」仍然可見,我一直在試圖弄清楚如何解決這個問題,但我被卡住了。 (鏈接也不是真的工作,因爲它只指向沒有trackID的部分)

所以現在我轉向你。你能幫我解決這個問題嗎?如果不是,我可能會保持原樣。

回答

0

之前寫一個鏈接檢查文件空虛例如:

$file = "Snip_TrackId.txt"; 
if (0 < filesize($file)) { 
    $myfile = fopen("Snip_TrackId.txt", "r") or die("Die!"); 
    echo "<a href='https://open.spotify.com/track/"; 
    echo fread($myfile,filesize("Snip_TrackId.txt")); 
    echo "'target='_blank'><img width='18px' height='18px' title='Open with Spotify' src='np_spotify.png'><a/> <- Listen"; 
    fclose($myfile); 
} 

或者,如果文件中包含空格 - 檢查讀取數據:

$myfile = fopen("Snip_TrackId.txt", "r") or die("Die!"); 
$data = trim(fread($myfile,filesize("Snip_TrackId.txt"))); 
if ($data) { 
    echo "<a href='https://open.spotify.com/track/"; 
    echo $data; 
    echo "'target='_blank'><img width='18px' height='18px' title='Open with Spotify' src='np_spotify.png'><a/> <- Listen"; 
} 
fclose($myfile); 
1

你可以閱讀它之前只檢查文件大小:

<?php 
if ((int)filesize("Snip_TrackId.txt") > 0) 
{ 
    $myfile = fopen("Snip_TrackId.txt", "r") or die("Die!"); 
    echo "<a href='https://open.spotify.com/track/"; 
    echo fread($myfile, filesize("Snip_TrackId.txt")); 
    echo "'target='_blank'><img width='18px' height='18px' title='Open with Spotify' src='np_spotify.png'><a/> <- Listen"; 
    fclose($myfile); 
} 
+0

非常感謝您爲我解決這個問題。我發現所有三個答案工作正常。試圖投票他們所有的人,但因爲Iäm新在這裏沒有工作:) 我結束了使用第一個,檢查如果文件是空的或不。 –

+0

我最後還添加了一個'else語句',如 'else {0}「這裏沒什麼可看的東西」; }' 但我不確定我會使用那一個。空盒子對我來說看起來很好。再次感謝您的幫助 –