下面是我的工作代碼,它從遠程位置拉取文本文件,並將特定行插入到頁面的html正文中。代碼現在工作得很好。然而,我想對代碼做一個補充,並讓它隨機獲取它所在的行。這是我想要做的。PHP/Curl在兩個標籤之間隨機化文本
被拉動的文本文件將有不同數量的行。只有一條線通過echo $lines[0];
選擇,它告訴哪條線。該行將被格式化爲這樣..
<p>This is a line of text <a href="http://domain1.com">domain 1</a>. This is a line of text.</p><p>This is a line of text <a href="http://domain2.com">domain 2</a>. This is a line of text.</p><p>This is a line of text <a href="http://domain3.com">domain 3</a>. This is a line of text.</p>
所有這一切將是一行,並拉入到頁面的HTML。上面的例子將顯示3段文字,並按照上面的順序鏈接。
我想要做的就是讓文本行在<p>..</p>
之間隨機化所以,例如,如果我將下面的代碼放在站點A上,輸出將按照域1,域2和域3的順序排列。如果我把Site BI上的代碼稱爲域3,然後是域1,然後是域2.以隨機順序顯示它們,而不是每次將代碼放在網站上的確切順序。
我不知道是否需要某種緩存在網站上我有代碼要記住隨機顯示哪個順序。這就是我想要的。我不想在每個頁面加載一個隨機順序。
我希望這是有道理的。如果不是,請告訴我,這樣我可以嘗試並更好地解釋它。這是我現在的工作代碼。任何人都可以幫助我做到這一點?非常感謝您的幫助。
<?php
function url_get_contents ($url) {
if (function_exists('curl_exec')){
$conn = curl_init($url);
curl_setopt($conn, CURLOPT_SSL_VERIFYPEER, true);
curl_setopt($conn, CURLOPT_FRESH_CONNECT, true);
curl_setopt($conn, CURLOPT_RETURNTRANSFER, 1);
$url_get_contents_data = (curl_exec($conn));
curl_close($conn);
}elseif(function_exists('file_get_contents')){
$url_get_contents_data = file_get_contents($url);
}elseif(function_exists('fopen') && function_exists('stream_get_contents')){
$handle = fopen ($url, "r");
$url_get_contents_data = stream_get_contents($handle);
}else{
$url_get_contents_data = false;
}
return $url_get_contents_data;
}
?>
<?php
$data = url_get_contents("http://mydomain.com/mytextfile.txt");
if($data){
$lines = explode("\n", $data);
echo $lines[0];
}
?>
雖然你說你想輸出隨機化,你實際上去描述的是輸出旋轉。您需要將當前位置存儲在輪換過程中,並在每次輸出時對其進行相應處理。 – JBES
是的,這是更正確的,我問的是如何讓輸出旋轉。這是我需要幫助,因爲我不明白如何完成它。 – Matt