2011-01-21 6 views
0

CSVファイルを複数行配列に読み込んで解析するPHPコードがあります。次に、この配列をとり、simplehtmldomをオフにしますいくつかの会社の株式情報を返すクローラー。php配列へのリンクのCSVファイルを解析し、これらのリンクをsimplehtmldomに送ります。

CSVパーサーのPHPコードは、これは素晴らしい作品

$arrCSV = array(); 
// Opening up the CSV file 
if (($handle = fopen("NASDAQ.csv", "r")) !==FALSE) { 
// Set the parent array key to 0 
$key = 0; 
// While there is data available loop through unlimited times (0) using separator (,) 
while (($data = fgetcsv($handle, 0, ",")) !==FALSE) { 
    // Count the total keys in each row $data is the variable for each line of the array 
$c = count($data); 
    //Populate the array 
    for ($x=0;$x<$c;$x++) { 
    $arrCSV[$key][$x] = $data[$x]; 
    } 
    $key++; 
} // end while 
// Close the CSV file 
fclose($handle); 
} // end if 
echo "<pre>"; 
echo print_r($arrCSV); 
echo "</pre>"; 

であり、アレイ行単位、$ライン毎に可変でデータを解析します。私が今必要とするのは、simplehtmldomを介して読むことができるようにすることです。これは、このコードやこれと似たようなものを使って見ています。私はかなり経験不足ですが、どこかでforeach文が必要ですこの線。

これは、だから私のqyestionは、私はそれらの両方が一緒に仕事を得ることができ、私はsimplehtmldomマニュアルページを数回チェックアウトし、それをこの分野で漠然とlittlebit、simplehtmldomを見つけるjave方法ですsimplehtmldomコード

$html = file_get_html($data); 
$html->find('div[class="detailsDataContainerLt"]'); 
$tickerdetails = ("$es[0]"); 
$FileHandle2 = fopen($data, 'w') or die("can't open file"); 
fwrite($FileHandle2, $tickerdetails); 
fclose($FileHandle2); 
fclose($handle); 

です上記のコードは別の関数で使用していますが、direcltyでリンクするので、動作することがわかります。

よろしく マーティン

答えて

0

あなたのループは(はい、それは同じです)に減少させることができます。

while ($data = fgetcsv($handle, 0, ',')) { 
    $arrCSV[] = $data; 
} 

ではなくSimpleDomのSimpleXMLを使用して(それはですので、標準のPHP):

foreach ($arrCSV as $row) { 
    $xml = simplexml_load_file($row[0]); // Change 0 to the index of the url 
    $result = $xml->xpath('//div[contains(concat(" ", @class, " "), " detailsDataContainerLt")]'); 
    if ($result->length > 0) { 
     $file = fopen($row[1], '2'); // Change 1 to the filename you want to write to 
     if ($file) { 
      fwrite($file, (string) $result->item(0)); 
      fclose($file); 
     } 
    } 
} 

私は正しく理解したらそれをするべきです...

関連する問題