Hoy os voy a compartir un código para poder validar un Token ReCaptcha con PHP.

Lo primero que haremos es copiar esta función en el archivo dónde queramos validar:
if (!isset($body["token_recaptcha"])) {
die("Error no recibe el captcha");
}
$recaptcha = $body["token_recaptcha"];
$url = 'https://www.google.com/recaptcha/api/siteverify';
$data = array(
'secret' => 'SECRET_CODE',
'response' => $recaptcha,
'remoteip' => $_SERVER['HTTP_CLIENT_IP']
);
$options = array(
'http' => array(
'method' => 'POST',
'content' => http_build_query($data)
)
);
$context = stream_context_create($options);
$verify = file_get_contents($url, false, $context);
$captcha_success = json_decode($verify);
if ($captcha_success->success) {
echo "Captcha OK"
} else {
die("Error validando el captcha");
}
}
En este ejemplo pasamos por body JSON el código reCaptcha obtenido y lo validamos.
Sustituye SECRET_CODE por el código secreto obtenido al crear el captcha.
Para enviar la IP remota puedes usar HTTP_CLIENT_IP o HTTP_X_REAL_IP si usas un proxy inverso como NPM
Finalmente valida el token de captcha y permite continuar.

Ingeniero en Informática, Investigador, me encanta crear cosas o arreglarlas y darles una nueva vida. Escritor y poeta. Más de 20 APPs publicadas y un libro en Amazon.