Q:

Erro no Recaptcha me retorna um erro no file_get_contents

Ola pessoal, estou tendo esse problema com o recaptcha em um sistema implementado em PHP, o código abaixo como esta o código.
O Recaptcha no HTML esta assim, decidi deixar esse script la também para organização. 
<div class="g-recaptcha" id="captcha" data-sitekey="6LdAHWcUAAAAAPFO6j34mmWwhRer0K8Kp8901jM-" data-error-callback="errorRecaptcha" data-expired-callback="recaptchaExpired"></div>

                        <script>
                            // Função que bloqueia o submit quando o recaptcha expira
                            function recaptchaExpired(){
                                alert("ReCaptcha expirado, por favor verifique novamente !");
                                setTimeout(function(){location.reload()}, 500);
                            }

                            function errorRecaptcha(){
                                alert("Erro ao Validar Recaptcha");
                                setTimeout(function(){location.reload()}, 500);
                            }
                        </script>

é no PHP eu realizo isso para validar
$captcha = $_POST['g-recaptcha-response'];
$secret_key = "***";

$content = http_build_query(array(
'secret' => $secret_key,
'response' => $captcha,
));

$context = stream_context_create(array(
'http' => array(
    'method' => 'POST',
    'content' => $content
)
));

//A função abaixo realiza o envio da resposta captcha para verificação e tem como retorno um JSON
$result_json = file_get_contents('https://www.google.com/recaptcha/api/siteverify', null, $context);

$array_result = json_decode($result_json, true);

//Valida se o retorno do servidor é true ou false para o captcha informado
$resp_captcha = intval($array_result['success']);
if ($resp_captcha === 1) {

A:

Utilizando o ReCaptcha no site
Como você não exemplificou com exatidão como é o seu formulário eu vou criar um exemplo de uso com um formulário de login:      
<form action="login.php" method="post">
    <input type="text" name="username" placeholder="Digite o seu nome de usuário">
    <input type="password" name="password" placeholder="Digite a sua senha">
    <div class="g-recaptcha" data-sitekey="SUA-CHAVE"></div>
</form>

No login.php você teria a seguinte lógica implementada:
// Aqui você recebe um valor fornecido pelo reCAPTCHA 
$captcha_code = $_POST['g-recaptcha-response'];

// Caso nenhum valor for recebido é porque o usuário nem respondeu o captcha
if (!$captcha_code) {
    echo "Por favor, responda o captcha.";
    exit;
}

// Se o usuário realmente respondeu o reCAPTCHA vamos fazer uma requisição para a API do captcha utilizando o file_get_contents do php

$resposta = file_get_contents("https://www.google.com/recaptcha/api/siteverify?secret=SUA-CHAVE-SECRETA&response=".$captcha_code."&remoteip=".$_SERVER['REMOTE_ADDR']);
$resposta = json_decode($resposta, true);

// Lembre de colocar a sua chave secreta onde está SUA-CHAVE-SECRETA

// Agora vamos validar se realmente a resposta é válida

if ($answer_captcha['success'] == false) {
    echo "Você precisa provar que não é um robô.";
    exit;
} else {
    echo "Logado com sucesso!";
}

Sobre o erro, o Google recomenda, e é o ideal que a validação seja feita no server-side (ele nem permite que você faça no client-side). O que daria para fazer é pegar a resposta do Captcha com Javascript e usar em uma chamada AJAX.
Sobre essa função abaixo, você não precisa usá-la, pois o reCAPTCHA já valida se o mesmo está expirado, tudo pelo acesso a API.
<script>

// Função que bloqueia o submit quando o recaptcha expira
function recaptchaExpired() {
    alert("ReCaptcha expirado, por favor verifique novamente !");
    setTimeout(function () {
        location.reload()
    }, 500);
}

</script>

No link da documentação abaixo mostra todos os erros e o que pode ocasionar.
Qualquer dúvida acesse a documentação do Google ReCaptcha clicando aqui.

