Arquivo da categoria: PHP

Parse error: syntax error, unexpected ‘class’ (T_CLASS), expecting identifier (T_STRING) or variable (T_VARIABLE) or ‘{‘ or ‘$’

Ao tentar executar um script PHP você recebe a mensagem de erro “Parse error: syntax error, unexpected ‘class’ (T_CLASS), expecting identifier (T_STRING) or variable (T_VARIABLE) or ‘{‘ or ‘$’ in seuscript. on line XX? Continue lendo

Como posso pegar os resultados das loterias com PHP?

<?php

    // Leitura de resultados da mega-sena
    // Autor: Paulo Costa
    // URL: http://www1.caixa.gov.br/loterias/_arquivos/loterias/D_megase.zip

    $contents = file_get_contents('megasena.htm');

    $doc = new DOMDocument();
    @$doc->loadHTML($contents);
    
    $lint_sorteioRowspan = 2;
    $tags = $doc->getElementsByTagName('tr');


    $larr_sorteios = array();

    foreach ($tags as $tag) {

        $lint_sorteioRowspan --;

        if ( $lint_sorteioRowspan == 0 ) {
            
            $lstr_sorteioNumero = $tag->getElementsByTagName('td')->item(0)->nodeValue;
            $lint_sorteioRowspan = $tag->getElementsByTagName('td')->item(0)->getAttribute('rowspan');

            
               $larr_sorteio['Data'] = $tag->getElementsByTagName('td')->item(1)->nodeValue;
            $larr_sorteio['Dezena1'] = $tag->getElementsByTagName('td')->item(2)->nodeValue;
            $larr_sorteio['Dezena2'] = $tag->getElementsByTagName('td')->item(3)->nodeValue;
            $larr_sorteio['Dezena3'] = $tag->getElementsByTagName('td')->item(4)->nodeValue;
            $larr_sorteio['Dezena4'] = $tag->getElementsByTagName('td')->item(5)->nodeValue;
            $larr_sorteio['Dezena5'] = $tag->getElementsByTagName('td')->item(6)->nodeValue;
            $larr_sorteio['Dezena6'] = $tag->getElementsByTagName('td')->item(7)->nodeValue;

            $larr_sorteios[] = $larr_sorteio;

        }

    }

    print_r($larr_sorteios);

?>

Como obter informações do CNPJ utilizando Webservice usando PHP?

É possível obter os dados atualizados consultando a base de dados da receita federal, mas o SERPRO compra muito caro; Assim, é melhor utilizar o serviço de terceiros que fazem o cacheamento e vendem mais barato o acesso. Neste artigo iremos consultar os dados utilizando o serviço ReceitaWS. Continue lendo

Como utilizar o Google Translate usando PHP

1) instale o Composer em sua máquina;
2) Utilizando a linha de comando do Windows (cmd), vá até a pasta raiz do seu projeto e digite o comando: composer require google/cloud-translate
3) Crie uma conta de serviço:

3.1) Acesse o link: https://console.cloud.google.com/projectselector/iam-admin/serviceaccounts
3.2) Selecione o projeto
3.3) clique no botão “Criar conta de serviço”
3.4) Preencha o nome da sua conta e selecione em papel o item “Projeto > Proprietário”
3.5) Marque o item: “Fornecer uma nova chave privada”
3.6) deixe o tipo de chave como “json” e clique no botão criar.
3.7) Será criada a conta e o navegador fará o download de um arquivo json. Adicione este arquivo a raiz de seu projeto.

4) Adicione a linha abaixo a configuração do apache, com o endereço correto onde foi colocado o arquivo json: SetEnv GOOGLE_APPLICATION_CREDENTIALS C:\xampp\htdocs\projeto.json
5) Reinicie o apache.

Salve o código como index.php na raiz de seu projeto, modificando apenas o valor do ProjectID para o seu valor. Caso vc não saiba o ID de seu projeto, visite a página https://console.cloud.google.com/iam-admin/settings e verifique o nome do campo “Código do Projeto”:

<?
# Includes the autoloader for libraries installed with composer
require __DIR__ . '/vendor/autoload.php';

# Imports the Google Cloud client library
use Google\Cloud\Translate\TranslateClient;

# Your Google Cloud Platform project ID
$projectId = 'IDDoSeuProjet';

# Instantiates a client
$translate = new TranslateClient([
    'projectId' => $projectId
]);

# The text to translate
$text = 'Hello, world!';
# The target language
$target = 'pt-BR';

# Translates some text into Brazilian Protuguese
$translation = $translate->translate($text, [
    'target' => $target
]);

echo 'Text: ' . $text . '
Translation: ' . $translation['text'];
?>

abra a página no navegador e veja o resultado: Text: Hello, world! Translation: Olá Mundo!

Para mais informações visite a página do Google: https://cloud.google.com/translate/docs/reference/libraries#client-libraries-install-php

Como adicionar múltiplas linhas de cabeçalho em uma requisição do cURL no PHP?

Como fazer para adicionar múltiplos itens a um cabeçalho de requisição HTTP enviada pelo cURL? Utilize a opção CURLOPT_HTTPHEADER e passe como parâmetro um Array():

<?
    curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: multipart/form-data', 'X-Requested-With: XMLHttpRequest'));
?>

Exemplo de código de requisição POST, enviando os dados de usuário e senha:


    $postfields = array();
    $postfields['usuario'] = $lstr_formUsuario;
    $postfields['senha'] = $pstr_formSenha;

    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_REFERER, $referer);
    curl_setopt($ch, CURLOPT_POST, 1);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $postfields);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: multipart/form-data', 'X-Requested-With: XMLHttpRequest') );
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, false);
    curl_setopt($ch, CURLOPT_COOKIEJAR, dirname(__FILE__) . '/cookie.txt');
    curl_setopt($ch, CURLOPT_COOKIEFILE, dirname(__FILE__). '/cookie.txt');

    echo curl_exec($ch);