0

URL の一部が固定され、URL の他の部分が可変である、多数の URL アドレスにアクセスしようとしています。より具体的には、変数は常にクエリ文字列です。

URL 形式の例を以下に示します。これは、宛先 URL が整数に基づいてタスクを実行するスクリプトであるためです。ただし、多数の「id」値を取得する必要があります。テキスト ファイルに 'id' 値を用意し、ある値を別の値の下に (別の行に) 配置します。

http://www.example.com/thread.php?id=

ここに投稿する前に、コマンドライン、Apple Script、curl の両方を試しました。

私のcurlスクリプトは以下です。

<?php

$lines = file('input/threads.txt');

foreach($lines as $line)
{
    $ch=curl_init();
    curl_setopt($ch, CURLOPT_URL,'http://www.example.com/thread.php?id=' . $line . '');
    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 30);
    curl_exec($ch);
    curl_close($ch);
    }
?>

この作業をより効率的に行う方法があるかどうか疑問に思っていました。私は特に、タスクのステータス (「リストのどこまで...」) を知ることを考えています。

ありがとう、

4

1 に答える 1

0

反復インデックスをプロセス インジケーターとして使用できます。

$lines = file('input/threads.txt');
$lineCount = count($lines);

foreach ($lines as $index => $line) {
    echo 'fetching URL #' . ($index + 1) . ' of ' . $lineCount . "...\n";
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, 'http://www.example.com/thread.php?id=' . urlencode($line));
    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 30);
    curl_exec($ch);
    curl_close($ch);
}
于 2013-03-31T20:00:24.420 に答える