2012-04-25 83 views
0

因此,我正在製作一個腳本,用戶可以檢查網站是否啓動,我有網站檢查部分,但現在我需要弄清楚它實際讀取的部分名單。PHP,移動到列表上的下一個項目

用戶不得不一次進入一個網站,所以我想花時間做出這樣的用戶可以做這樣的事情,他們可以放在一個長長的網站列表,他們會每個都可以單獨閱讀,並在線或離線標記。

例子:

google.com

facebook.com

yahoo.com

我需要幫助的唯一的事情,就是我怎樣才能使它循環通過每一行?它檢查一行,然後移動到下一行。

謝謝!

+0

沒什麼,我真的不知道如何去做這件事。即使只有少量的信息可能會導致我走向正確的方向。 – 2012-04-25 02:44:52

回答

1

你有沒有嘗試過這樣的:

<?PHP 

$string = $_POST['url_list']; 

foreach(explode("\n", $string) as $line) { 

    // do something 

} 

?> 

如果使用\ n不是工作,你也可以嘗試使用\ r \ n代替。

+0

出現新問題時,我很難使其只讀取網站的一行,並在其旁邊打印出「在線」或「離線」。它正在打印整個網站列表。基本上,我需要它讀一行,回聲「離線」或「離線」,並轉移到下一個。 – 2012-04-25 03:36:27

0
<?php 
    $sites = $_POST['listofsites']; 

    // Assuming list of sites in in a textarea and separated by a new line 
    $sites = explode("\n", $sites); 

    foreach ($sites as $site) 
    { 
     // do your thing 
    } 
?> 
+0

有一個新問題,我很難讓它只讀一行網站,並在旁邊打印出「在線」或「離線」。它正在打印整個網站列表。基本上,我需要它讀一行,回聲「離線」或「離線」,並轉移到下一個。 – 2012-04-25 03:38:02

0

HTML

<textarea name="site_list"> 

</textarea> 

PHP

<?php 
    $sites = array_filter(explode("\n", str_replace("\r","\n", $_POST['site_list'])),'trim'); 
    foreach($sites as $site){ 

     // site checking code here 
    } 
?> 

這會從一個textarea網站的列表,並清理名單之前或在URL後刪除任何空行或空字符。

+0

有一個新問題,我很難讓它只讀一行網站,並在旁邊打印出「在線」或「離線」。它正在打印整個網站列表。基本上,我需要它讀一條線,回聲「離線」或「離線」,並移動到下一個 – 2012-04-25 03:39:00

+0

聽起來像另一個問題。 – iambriansreed 2012-04-25 03:40:12

0

簡單的解決方案是以逗號分隔輸入,然後用逗號分隔符將字符串分解。

$string = "yahoo.com,google.com"; 
$explode = explode(',',$string); 
foreach ($explode as $e){ 
//do whatever you want to do 
} 
相關問題