特定の Web サイトから情報を取得するスクリプトに取り組んでいます。上記の Web サイトは、データベースから情報を取得し、ユーザーが簡単に読めるように (いつものように) 表示します。
次のように見えると想像してください。
Var1 : 結果 1 Var2:結果 2 Var3:結果 3
私のスクリプトが行うことは、ページのソース コードを読み取り、2 つの文字列の間のテキストを取得して "result1"、"result2"、"result3" を取得することです。
サンプルコード:
<?php
function get_string_between($string, $start, $end) {
$string = " ".$string;
$ini = strpos($string,$start);
if ($ini == 0) return "";
$ini += strlen($start);
$len = strpos($string,$end,$ini) - $ini;
return substr($string,$ini,$len);
}
function check($url) {
// usually, $fullstring = file_get_contents($url);
$fullstring = "<string1>result1</string1><string1>result2</string1><string1>result3</string1>";
$result = get_string_between($fullstring, "<string1>", "</string1>");
echo "<b>Result: </b>".$result;
}
check("random"); // just to execute the function
?>
なぜ私が check() 関数を持っているのか不思議に思うかもしれませんが、それはこのコードが何か大きなものの一部であり、この場合のシナリオで機能するソリューションが必要なためです。
これで「result1」は初見なので簡単に取得できますが、「result2」と「result3」はどうすれば取得できるのでしょうか。
ありがとうございました :)