serp.cheapを使って、PHPからGoogleを検索し構造化された結果を取得します。
ネイティブcURL (依存パッケージなし)
<?php
$ch = curl_init("https://api.serp.cheap/v1/search");
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => ["X-API-Key: YOUR_KEY", "Content-Type: application/json"],
CURLOPT_POSTFIELDS => json_encode(["q" => "best electric cars 2026", "gl" => "us", "page" => 1]),
]);
$res = curl_exec($ch);
$code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
if ($code !== 200) {
throw new RuntimeException("Search failed: HTTP $code");
}
$data = json_decode($res, true);
foreach ($data["organic"] as $r) {
printf("#%d %s — %s\n", $r["position"], $r["title"], $r["link"]);
}
Guzzleを使う
<?php
use GuzzleHttp\Client;
$client = new Client(["base_uri" => "https://api.serp.cheap/"]);
$res = $client->post("v1/search", [
"headers" => ["X-API-Key" => "YOUR_KEY"],
"json" => ["q" => "serp api php", "gl" => "us"],
]);
$data = json_decode((string) $res->getBody(), true);
echo "cost: {$data['stats']['cost']} credits\n";
ページネーション
pageを増やします (1始まり)。各ページは個別に課金されるリクエストです。APIキーはサーバーサイドの設定に保管し、クライアントの出力に含めないでください。
次のステップ
-
Google Search APIの使い方 (完全リファレンス)