examples/google_recaptcha_v3.php
<?php declare(strict_types=1); use PHPExperts\RESTSpeaker\RESTAuth; use PHPExperts\RESTSpeaker\RESTSpeaker; require __DIR__ . '/../vendor/autoload.php'; function viaRESTSpeaker() { $secret = 'YOUR_SECRET_KEY'; $action = "submit"; $auth = new class(RESTAuth::AUTH_NONE) extends RESTAuth { protected function generateOAuth2TokenOptions(): array { } protected function generatePasskeyOptions(): array { } }; $api = new RESTSpeaker($auth); $response = $api->post('https://www.google.com/recaptcha/api/siteverify', [ 'secret' => $secret, 'response' => $captcha ]); if ($response->success == '1') { echo "Whoohoo!"; } } function viaCurl(){ $secret = 'YOUR_SECRET_KEY'; $action = "submit";// call curl to POST request $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, "https://www.google.com/recaptcha/api/siteverify"); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query(array('secret' => $secret, 'response' => $captcha))); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $response = curl_exec($ch); curl_close($ch); $arrResponse = json_decode($response, true);// verify the response if ($arrResponse["success"] == '1' && $arrResponse["action"] == $action && $arrResponse["score"] >= 0.5) {// valid submission// proceed } else {// spam submission// show error message }}