Artigos de PHP e Programação

PHP e Programação 394 Como mudar a versão do PHP Pode escolher em que versão de PHP o seu site corre, das mais antigas às mais recentes, e activar ou desactivar...
PHP e Programação 261 Que tecnologias correm aqui: PHP, Node, Python, Perl, jogos e os limites «O meu programador pergunta se suportam X.» Esta página responde a isso de uma vez, com nomes e versões - e diz...
PHP e Programação 474 Ver e ajustar a configuração do PHP: versão por pasta, extensões e phpinfo Mudar a versão do PHP de um site inteiro é fácil e está explicado em como mudar a versão do PHP. Este artigo é o...
PHP e Programação 249 Os limites do PHP: memória, tempo, tamanho de upload e o que falha em silêncio «Não consigo carregar a imagem.» «A importação pára a meio.» «O menu perdeu metade dos itens depois de gravar.» São...
PHP e Programação 297 Onde está o registo de erros do PHP, como o ler, e os erros que mais aparecem Quando um site parte, há duas maneiras de reagir: adivinhar, ou ler o que o servidor já escreveu. A segunda é mais...
PHP e Programação 280 O exec e o shell_exec funcionam aqui? Porque é que nenhuma função do PHP está desactivada Quem instala uma ferramenta que converte imagens, gera PDF ou corre um comando qualquer à parte acaba por bater...
PHP e Programação 223 Mudar a versão do PHP sem partir o site Mudar de versão é um clique, e está explicado passo a passo no artigo «Como mudar a versão do PHP». Este artigo é...
PHP e Programação 196 Pôr uma aplicação Laravel a correr O Laravel não é um CMS: é a base sobre a qual se escreve uma aplicação em PHP. Por isso este artigo tem duas...
PHP e Programação 307 Enviar e-mail a partir do seu código com o PHPMailer Um formulário de contacto, um recibo de encomenda, um aviso de senha nova: mais tarde ou mais cedo o seu código tem...
PHP e Programação 184 Ligar o Imagick no PHP: no painel, ou com WHM O Imagick é a extensão que dá ao PHP o poder do ImageMagick: abrir formatos que o resto não abre, redimensionar...
PHP e Programação 230 Recriar a ligação do wp-config.php O wp-config.php é o ficheiro que diz ao WordPress a que base de dados se há-de ligar, e com que senha. Sem ele, o...
PHP e Programação 245 Avisos de PHP à vista no site: o que são e como os calar No topo da página, ou no meio do painel, aparecem linhas como Warning: ... in...
PHP e Programação 185 Git no cPanel: publicar o site a partir de um repositório Quem trabalha com Git conhece o incómodo: o código está num repositório, o site está no servidor, e entre os dois há...
PHP e Programação 96 Que versão do PHP deve usar no seu site Use a versão mais recente que a sua aplicação diz suportar, e nunca uma que o próprio PHP já deixou de manter. Aqui...
PHP e Programação 93 Ligar ou desligar uma extensão do PHP no Select PHP Version No cPanel, abra Select PHP Version (secção Software), escolha a versão do PHP, abra o separador das Extensions e...
PHP e Programação 107 Composer na hospedagem partilhada: instalar e correr O Composer não vem instalado como comando no servidor, mas não precisa dele assim. Descarrega-se um único ficheiro,...
PHP e Programação 97 Correr um script PHP numa tarefa agendada (cron) Em Cron Jobs, no cPanel, o comando é o caminho completo do PHP, um espaço, e o caminho completo do script:...
PHP e Programação 117 php.ini e .user.ini: onde pôr cada valor e o que vale onde Para um valor que serve a conta inteira, use o separador Options do Select PHP Version. Para um valor que só serve...
PHP e Programação 94 Corrigir “Allowed memory size exhausted” A mensagem completa diz “Allowed memory size of … bytes exhausted (tried to allocate … bytes)”. Significa que um...
PHP e Programação 92 Corrigir “Maximum execution time exceeded” “Maximum execution time of N seconds exceeded” quer dizer que o script demorou mais do que o max_execution_time do...
PHP e Programação 105 Corrigir “Call to undefined function”: a extensão que falta A mensagem “Call to undefined function nome()” diz que o código chamou uma função que o PHP desta pasta não tem....
PHP e Programação 116 Enviar ficheiros grandes em PHP: upload_max_filesize e post_max_size Para enviar um ficheiro grande por um formulário, dois valores têm de ser altos o bastante, e o segundo tem de ser...
PHP e Programação 89 Sessões do PHP: onde ficam, e porque é que os utilizadores são desligados Uma sessão do PHP é um pequeno ficheiro no servidor, ligado ao visitante por um cookie (o PHPSESSID). É lá que a...
PHP e Programação 69 .htaccess para projectos PHP: URLs amigáveis e redireccionamentos O ficheiro .htaccess é onde se diz ao servidor como tratar os endereços: mandar todos os pedidos para um único...
PHP e Programação 112 Enviar e-mail a partir do PHP: mail() ou SMTP Use SMTP com uma caixa de e-mail real do seu domínio. A função mail() serve para um teste rápido, mas devolve...
PHP e Programação 127 Página em branco no PHP: como ver o erro Uma página branca quer dizer que o PHP deu um erro fatal e está configurado para não o mostrar. É a configuração...
PHP e Programação 122 Manter as palavras-passe fora do código PHP: ficheiros .env e as permissões certas Ponha as palavras-passe e as chaves num ficheiro de configuração fora da pasta pública, com permissão de leitura só...
PHP e Programação 107 OPcache no PHP: o que faz, como ligar, e porque as alterações às vezes não aparecem Sempre que alguém visita uma página PHP, o PHP lê os ficheiros do código e traduz-os para um formato interno antes...
PHP e Programação 115 Erro cURL 28, 7 e 6 no PHP: tempo esgotado, ligação recusada e não resolve o nome Quando o seu site chama um serviço de fora (um pagamento, uma API, uma actualização) e falha, o PHP devolve um...
PHP e Programação 100 Erro cURL 60 no PHP: problema com o certificado SSL, e porque não desligar a verificação “cURL error 60: SSL certificate problem” quer dizer que o PHP ligou-se a um serviço por HTTPS e não confiou no...
PHP e Programação 102 “Cannot modify header information, headers already sent”: como achar a linha que o causou A mensagem completa é “Warning: Cannot modify header information - headers already sent by (output started at...
PHP e Programação 116 O envio de ficheiros falha com “failed to open stream” ou move_uploaded_file: as causas, por ordem O ficheiro chega ao servidor, o PHP guarda-o numa pasta temporária e o seu código tenta mudá-lo para o sítio...
PHP e Programação 86 O Composer diz “requirements could not be resolved”: versão do PHP e extensões em falta O Composer instala bibliotecas e, antes de o fazer, confere se o PHP onde corre cumpre o que cada uma exige. A...
PHP e Programação 87 Erros depois de passar para o PHP 8: undefined array key, parâmetros nulos e propriedades dinâmicas Passou o site para o PHP 8 e aparecem mensagens novas. Quase todas vêm do mesmo sítio: o PHP 8 ficou menos tolerante...
PHP e Programação 102 Pôr uma aplicação CodeIgniter a funcionar na hospedagem com cPanel Uma aplicação CodeIgniter corre bem em hospedagem com cPanel, desde que o domínio aponte para a pasta public da...
PHP e Programação 103 Laravel dá erro 500 ou «No application encryption key»: o que verificar Na maioria dos casos, um Laravel acabado de enviar que dá erro 500 tem uma de quatro causas: falta a chave da...
PHP e Programação 107 O «php -v» em SSH mostra outra versão que não a do site: como correr o PHP que escolheu O comando php que escreve no Terminal ou em SSH não é obrigado a ser a versão que escolheu para o site. O site usa o...
PHP e Programação 89 Chamar uma API web a partir do PHP com o cURL e ler a resposta em JSON Para falar com uma API a partir do PHP usa-se o cURL: abre-se um pedido, envia-se, lê-se o código de estado (200,...
PHP e Programação 100 O json_decode devolve null: como descobrir o que está mal no JSON Quando o json_decode devolve null, o PHP sabe porquê: pergunte-lhe. A função json_last_error_msg() diz a razão em...
PHP e Programação 107 Escrever o seu próprio registo em PHP: error_log e um ficheiro que consiga ler Quando uma coisa falha só em produção, o melhor aliado é um registo que o próprio código escreve: uma linha com a...
PHP e Programação 56 ionCube Loader: quando um programa o pede e como o ligar A resposta curta: alguns programas comprados (temas, módulos, sistemas de gestão) vêm com o código codificado para...
PHP e Programação 64 A data ou a hora erradas no site ou nos e-mails: fusos horários do WordPress, do PHP e do seu aparelho A resposta curta: «a hora está errada» pode vir de quatro sítios, e acertar a hora de um não corrige os outros: o...
PHP e Programação 67 Acentos que viram símbolos estranhos no site: UTF-8 do ficheiro à base de dados A resposta curta: «ação» aparece como «ação», ou como «a��o», ou como «a?o». É sempre o mesmo problema: o texto...
PHP e Programação 70 Enviar códigos de uso único (OTP) por SMS com segurança: validade, tentativas e registos A resposta curta (para programadores): um código enviado por SMS só é tão seguro como o código que o rodeia. As...
PHP e Programação 59 O que é uma API, em palavras simples: pedidos, respostas e um exemplo REST A resposta curta: uma API é a forma combinada de um programa pedir coisas a outro. Em vez de uma pessoa abrir uma...
PHP e Programação 46 URL de callback ou URL de retorno: porque o cliente voltar ao site não prova o pagamento A resposta curta: num pagamento online há, normalmente, dois endereços seus que o operador usa. O URL de retorno...
PHP e Programação 46 Tempos de espera, repetições e idempotência: como não cobrar duas vezes ao cliente A resposta curta: quando um pedido a uma API esgota o tempo de espera, não sabe se ele chegou. Pode ter falhado...