As 100 principais perguntas e respostas da entrevista sobre PHP (PDF)

Aqui estão as perguntas e respostas da entrevista em PHP para candidatos mais novos e experientes para conseguir o emprego dos sonhos.

 

Perguntas da entrevista em PHP para calouros


1) O que é PHP?

PHP é uma linguagem web baseada em scripts que permite aos desenvolvedores criar páginas web geradas dinamicamente.


2) O que significam as iniciais de PHP?

PHP significa Pré-processador de hipertexto.

👉 Download gratuito de PDF: Perguntas e respostas da entrevista em PHP


3) Com qual linguagem de programação o PHP se assemelha?

A sintaxe do PHP se assemelha ao Perl e C


4) O que significa PEAR?

PEAR significa “Extensão PHP e Repositório de Aplicativos”. Ele estende o PHP e fornece um nível mais alto de programação para desenvolvedores web.


5) Qual é a versão do PHP realmente utilizada?

A versão 7.1 ou 7.2 é a versão recomendada do PHP.


6) Como você executa um script PHP na linha de comando?

Basta usar a interface de linha de comando (CLI) do PHP e especificar o nome do arquivo do script a ser executado da seguinte forma:
php script.php


7) Como executar o shell PHP interativo a partir da interface de linha de comando?

Basta usar o programa PHP CLI com a opção -a da seguinte forma:
php -a


8) Qual é a maneira correta e mais comum de iniciar e terminar um bloco de código PHP?

As duas maneiras mais comuns de iniciar e terminar um script PHP são:

 <?php [   ---  PHP code---- ] ?> and <? [---  PHP code  ---] ?>

9) Como podemos exibir a saída diretamente no navegador?

Para poder exibir a saída diretamente no navegador, temos que usar tags especiais .


10) Qual a principal diferença entre PHP 4 e PHP 5?

PHP 5 apresenta muitos OOP adicionais (Programação Orientada a Objetos) recursos.


11) A herança múltipla é suportada em PHP?

PHP suporta apenas herança única; isso significa que uma classe pode ser estendida de apenas uma classe usando a palavra-chave 'estendido'.


12) Qual o significado de uma aula final e de um método final?

'final' é introduzido no PHP5. Classe final significa que esta classe não pode ser estendida e um método final não pode ser substituído.


13) Como é feita a comparação de objetos em PHP?

Usamos o operador '==' para testar se dois objetos são instanciados da mesma classe e têm os mesmos atributos e valores iguais. Podemos testar se dois objetos estão se referindo à mesma instância da mesma classe usando o operador de identidade '==='.


14) Como o PHP e o HTML podem interagir?

É possível gerar HTML através de scripts PHP, e é possível passar informações de HTML para PHP.


15) Que tipo de operação é necessária ao passar valores através de um formulário ou URL?

Se quisermos passar valores por meio de um formulário ou URL, precisamos codificá-los e decodificá-los usando htmlspecialchars() e urlencode().


16) Como PHP e Javascript podem interagir?

PHP e Javascript não podem interagir diretamente, pois PHP é uma linguagem do lado do servidor e Javascript é uma linguagem do lado do cliente. Porém, podemos trocar variáveis, pois o PHP pode gerar código Javascript para ser executado pelo navegador e é possível passar variáveis ​​específicas de volta ao PHP através da URL.


17) O que é necessário para poder usar a função de imagem?

A biblioteca GD é necessária para executar funções de imagem.


18) Qual a utilidade da função 'imagetypes()'?

imagetypes() fornece o formato e os tipos de imagem suportados pela versão atual do GD-PHP.


19) Quais são as funções a serem utilizadas para obter as propriedades da imagem (tamanho, largura e altura)?

A funções são getimagesize() para tamanho, imagesx() para largura e imagesy() para altura.


20) Como as falhas na execução são tratadas com as funções include() e require()?

Se a função require() não puder acessar o arquivo, ele terminará com um erro fatal. No entanto, o include() função emite um aviso e o script PHP continua a ser executado.


21) Qual é a principal diferença entre require() e require_once()?

require() e require_once() execute a mesma tarefa, exceto que a segunda função verifica se o script PHP já está incluído ou não antes de executá-lo.

(o mesmo para include_once() e include())


22) Como posso exibir texto com um script PHP?

Dois métodos são possíveis:

<!--?php echo "Method 1"; print "Method 2"; ?-->

23) Como podemos exibir informações de uma variável e legíveis por um humano com PHP?

Para poder exibir um resultado legível por humanos, usamos print_r().


24) Como é possível definir um tempo de execução infinito para um script PHP?

O set_time_limit(0) adicionado no início de um script define como infinito o tempo de execução para não ter o erro PHP 'tempo máximo de execução excedido'. Também é possível especificar isso no arquivo php.ini.


Perguntas e respostas da entrevista em PHP para experientes

25) O que significa o erro do PHP 'Erro de análise no PHP – T_variable inesperado na linha x'?

Este é um erro de sintaxe do PHP que expressa que um erro na linha x interrompe a análise e a execução do programa.


26) O que devemos fazer para poder exportar dados para um arquivo Excel?

A forma mais comum e utilizada é colocar os dados em um formato suportado pelo Excel. Por exemplo, é possível escrever um arquivo .csv, escolher por exemplo a vírgula como separador entre os campos e depois abrir o arquivo com Excel.


27) Para que serve a função file_get_contents()?

file_get_contents() permite ler um arquivo e armazená-lo em uma variável string.


28) Como podemos conectar-nos a um banco de dados MySQL a partir de um script PHP?

Para poder conectar-se a um banco de dados MySQL, devemos usar a função mysqli_connect() da seguinte forma:

<!--?php $database = mysqli_connect("HOST", "USER_NAME", "PASSWORD"); mysqli_select_db($database,"DATABASE_NAME"); ?-->

29) Para que serve a função mysql_pconnect()?

mysql_pconnect() garantir uma conexão persistente com o banco de dados, significa que a conexão não fecha quando o script PHP termina.

Esta função não é suportada no PHP 7.0 e superior


30) Como é tratado o conjunto de resultados do Mysql em PHP?

O conjunto de resultados pode ser tratado usando mysqli_fetch_array, mysqli_fetch_assoc, mysqli_fetch_object ou mysqli_fetch_row.


31) Como é possível saber a quantidade de linhas retornadas no conjunto de resultados?

A função mysqli_num_rows() retorna o número de linhas em um conjunto de resultados.


32) Qual função nos dá o número de entradas afetadas por uma consulta?

mysqli_affected_rows() retornar o número de entradas afetadas por uma consulta SQL.


33) Qual é a diferença entre mysqli_fetch_object() e mysqli_fetch_array()?

A mysqli_fetch_object() função coleta o primeiro registro único correspondente onde mysqli_fetch_array() coleta todos os registros correspondentes da tabela em uma matriz.


34) Como podemos acessar os dados enviados através da URL com o método GET?

Para acessar os dados enviados através do método GET, usamos o array $_GET assim:

www.url.com?var=value
$variable = $_GET["var"]; this will now contain 'value'

35) Como podemos acessar os dados enviados através da URL com o método POST?

Para acessar os dados enviados desta forma, você usa o array $_POST.

Imagine que você tem um campo de formulário chamado 'var' no formulário quando o usuário clica em enviar para o formulário de postagem, você pode acessar o valor assim:

$_POST["var"];

36) Como podemos verificar se o valor de uma determinada variável é um número?

É possível usar a função dedicada is_numeric() para verificar se é um número ou não.


37) Como podemos verificar se o valor de uma determinada variável é alfanumérico?

É possível usar a função dedicada ctype_alnum para verificar se é um valor alfanumérico ou não.


38) Como posso verificar se uma determinada variável está vazia?

Se quisermos verificar se uma variável tem valor ou não, é possível usar a função vazia().


39) O que significa a função unlink()?

A função unlink() é dedicada ao tratamento do sistema de arquivos. Simplesmente exclui o arquivo fornecido como entrada.


40) O que significa a função unset()?

A função unset() é dedicada ao gerenciamento de variáveis. Isso tornará uma variável indefinida.


41) Como faço para escapar dos dados antes de armazená-los no banco de dados?

A função addlashes nos permite escapar dos dados antes do armazenamento no banco de dados.


42) Como é possível remover caracteres de escape de uma string?

A função stripslashes nos permite remover os caracteres de escape antes dos apóstrofos em um corda.


43) Como podemos escapar automaticamente dos dados recebidos?

Temos que habilitar a entrada Magic quotes no arquivo de configuração do PHP.


44) O que significa a função get_magic_quotes_gpc()?

A função get_magic_quotes_gpc() nos diz se as aspas mágicas estão ativadas ou não.


45) É possível remover as tags HTML dos dados?

A função strip_tags() nos permite limpar uma string das tags HTML.


46) para que serve a variável estática em função?

Uma variável estática é definida dentro de uma função apenas na primeira vez e seu valor pode ser modificado durante chamadas de função da seguinte maneira:

<!--?php function testFunction() { static $testVariable = 1; echo $testVariable; $testVariable++; } testFunction();        //1 testFunction();        //2 testFunction();        //3 ?-->

47) Como podemos definir uma variável acessível em funções de um script PHP?

Este recurso é possível usando a palavra-chave global.


48) Como é possível retornar um valor de uma função?

Uma função retorna um valor usando a instrução 'return $value;'.


49) Qual é o método de hash mais conveniente a ser usado para fazer hash de senhas?

É preferível usar crypt() que suporta nativamente vários algoritmos de hash ou a função hash() que suporta mais variantes do que crypt() em vez de usar algoritmos de hash comuns como md5, sha1 ou sha256 porque eles são concebidos para serem rápidos. Conseqüentemente, fazer hash de senhas com esses algoritmos pode criar vulnerabilidade.


50) Qual extensão criptográfica proporciona geração e verificação de assinaturas digitais?

O PHP-OpenSSL extensão fornece diversas operações criptográficas, incluindo geração e verificação de assinaturas digitais.


Perguntas da entrevista sobre PHP para 5 anos de experiência

51) Como uma constante é definida em um script PHP?

A diretiva define() nos permite definir uma constante da seguinte forma:

define ("ACONSTANT", 123);

52) Como você pode passar uma variável por referência?

Para poder passar uma variável por referência, usamos um E comercial na frente dela, como segue $var1 = &$var2


53) Uma comparação de um número inteiro 12 e uma string “13” funcionará em PHP?

“13” e 12 podem ser comparados em PHP, pois converte tudo para o tipo inteiro.


54) Como é possível converter tipos em PHP?

O nome do tipo de saída deve ser especificado entre parênteses antes da variável que será convertida da seguinte forma:

* (int), (inteiro) – convertido em inteiro

* (bool), (boolean) – convertido em booleano

* (flutuar), (double), (real) – lançado para flutuar

* (string) – convertido em string

* (array) – convertido para array

* (objeto) – convertido em objeto


55) Quando uma declaração condicional termina com endif?

Quando o if original foi seguido por: e depois o bloco de código sem colchetes.


56) Como o operador condicional ternário é usado em PHP?

É composto por três expressões: uma condição e dois operandos que descrevem qual instrução deve ser executada quando a condição especificada for verdadeira ou falsa, como segue:

Expression_1?Expression_2 : Expression_3;

57) Para que é usada a função func_num_args()?

A função func_num_args() é usada para fornecer o número de parâmetros passados ​​para uma função.


58) Se a variável $var1 estiver definida como 10 e $var2 estiver definida como o caracter var1, qual é o valor de $$var2?

$$var2 contém o valor 10.


59) O que significa acessar uma aula via ::?

:: é usado para acessar métodos estáticos que não requerem inicialização de objeto.


60) Em PHP os objetos são passados ​​por valor ou por referência?

No PHP, os objetos são passados ​​por referência.


61) Os construtores Parent são chamados implicitamente dentro de um construtor de classe?

Não, um construtor pai deve ser chamado explicitamente da seguinte maneira:

parent::constructor($value)

62) Qual é a diferença entre __sleep e __wakeup?

__sleep retorna o array de todas as variáveis ​​que precisam ser salvas, enquanto __wakeup as recupera.


63) O que é mais rápido?

1- Combinando duas variáveis ​​da seguinte forma:

$variable1 = 'Hello ';

$variable2 = 'World';

$variable3 = $variable1.$variable2;

Or

2- $variable3 = "$variable1$variable2";

$variable3 conterá “Hello World”. O primeiro código é mais rápido que o segundo código, especialmente para grandes conjuntos de dados.


64) qual é a definição de sessão?

Uma sessão é um objeto lógico que nos permite preservar dados temporários em múltiplas páginas PHP.


65) Como iniciar uma sessão em PHP?

O uso da função session_start() nos permite ativar uma sessão.


66) Como você pode propagar um ID de sessão?

Você pode propagar um ID de sessão por meio de cookies ou parâmetros de URL.


67) Qual é o significado de um cookie persistente?

Um cookie persistente é armazenado permanentemente em um arquivo cookie no computador do navegador. Por padrão, os cookies são temporários e são apagados se fecharmos o navegador.


68) Quando terminam as sessões?

As sessões terminam automaticamente quando o script PHP termina a execução, mas podem ser encerradas manualmente usando session_write_close().


69) Qual é a diferença entre session_unregister() e session_unset()?

A função session_unregister() cancela o registro de uma variável global da sessão atual e a função session_unset() libera todas as variáveis ​​de sessão.


70) O que significa $GLOBALS?

$GLOBALS é um array associativo que inclui referências a todas as variáveis ​​que estão atualmente definidas no escopo global do script.


Perguntas da entrevista sobre PHP para 10 anos de experiência

71) O que significa $_SERVER?

$_SERVER é um array que inclui informações criadas pelo servidor web, como caminhos, cabeçalhos e locais de script.


72) O que significa $_FILES?

$_FILES é um array associativo composto de itens enviados ao script atual através do método HTTP POST.


73) Qual é a diferença entre $_FILES['userfile']['name'] e $_FILES['userfile']['tmp_name']?

$_FILES['userfile']['name'] representa o nome original do arquivo na máquina cliente,

$_FILES['userfile']['tmp_name'] representa o nome do arquivo temporário armazenado no servidor.


74) Como podemos obter o erro quando há um problema ao fazer upload de um arquivo?

$_FILES['userfile']['error'] contém o código de erro associado ao arquivo enviado.


75) Como podemos alterar o tamanho máximo dos arquivos a serem carregados?

Podemos alterar o tamanho máximo dos arquivos a serem enviados alterando upload_max_filesize em php.ini.


76) O que significa $_ENV?

$_ENV é um array associativo de variáveis ​​enviadas para o script PHP atual através do método de ambiente.


77) O que significa $_COOKIE?

$_COOKIE é um array associativo de variáveis ​​enviadas para o script PHP atual usando cookies HTTP.


78) O que significa o escopo das variáveis?

O escopo de uma variável é o contexto no qual ela é definida. Na maioria das vezes, todas as variáveis ​​PHP possuem apenas um único escopo. Esse escopo único também abrange arquivos incluídos e necessários.


79) qual a diferença entre o 'BITWISE Operador AND' e o operador 'LOGICAL AND'?

$a e $b: VERDADEIRO se $a e $b forem VERDADEIROS.

$a & $b: Os bits definidos em $a e $b são definidos.


80) Quais são os dois principais operadores de string?

O primeiro é o operador de concatenação ('.'), que retorna a concatenação de seus argumentos direito e esquerdo. A segunda é ('.='), que anexa o argumento da direita ao argumento da esquerda.


81) O que significa o operador de array '==='?

$a === $b TRUE se $a e $b tiverem os mesmos pares chave/valor na mesma ordem e dos mesmos tipos.


82) Quais são as diferenças entre $a != $b e $a !== $b?

!= significa desigualdade (VERDADEIRO se $a não for igual a $b) e !== significa não identidade (VERDADEIRO se $a não for idêntico a $b).


83) Como podemos determinar se uma variável PHP é um objeto instanciado de uma determinada classe?

Para poder verificar se uma variável PHP é um objeto instanciado de uma determinada classe usamos instanceof.


84) Para que serve a instrução goto?

A instrução goto pode ser colocada para permitir o salto dentro do programa PHP. O alvo é apontado por um rótulo seguido por dois pontos, e a instrução é especificada como uma instrução goto seguida pelo rótulo de destino desejado.


85) qual a diferença entre Exception::getMessage e Exception::getLine?

Exception::getMessage nos permite obter a mensagem de exceção e Exception::getLine nos permite obter a linha em que ocorreu a exceção.


86) O que significa a expressão Exception::__toString?

Exception::__toString fornece a representação String da exceção.


87) Como é possível analisar um arquivo de configuração?

A função parse_ini_file() nos permite carregar o arquivo ini especificado em filename e retornar as configurações nele em um array associativo.


88) Como podemos determinar se uma variável está definida?

A função booleana isset determina se uma variável está definida e não é NULL.


89) Qual a diferença entre as funções strstr() e stristr()?

A função de string strstr(string allString, string occ) retorna parte de allString desde a primeira ocorrência de occ até o final de allString. Esta função diferencia maiúsculas de minúsculas. stristr() é idêntico a strstr() exceto que não diferencia maiúsculas de minúsculas.


90) qual a diferença entre for e foreach?

para é expresso da seguinte forma:

para (expr1; expr2; expr3)

afirmação

A primeira expressão é executada uma vez no início. Em cada iteração, expr2 é avaliado. Se for TRUE, o loop continua e as instruções dentro de for são executadas. Se for avaliado como FALSE, a execução do loop termina. expr3 é testado no final de cada iteração.

No entanto, foreach fornece uma maneira fácil de iterar sobre arrays e é usado apenas com arrays e objetos.


91) É possível enviar formulário com botão dedicado?

É possível usar o document.form.submit() função para enviar o formulário. Por exemplo: <input type=button value="SUBMIT" onClick="document.form.submit()">


92) Qual é a diferença entre ereg_replace() e eregi_replace()?

A função eregi_replace() é idêntica à função ereg_replace() exceto que ignora a distinção entre maiúsculas e minúsculas ao combinar caracteres alfabéticos.


93) É possível proteger caracteres especiais em uma string de consulta?

Sim, usamos a função urlencode() para proteger caracteres especiais.


94) Quais são as três classes de erros que podem ocorrer no PHP?

As três classes básicas de erros são avisos (não críticos), avisos (erros graves) e erros fatais (erros críticos).


95) Qual a diferença entre os caracteres \034 e \x34?

\034 é octal 34 e \x34 é hexadecimal 34.


96) Como podemos passar a variável pela navegação entre as páginas?

É possível passar as variáveis ​​entre as páginas PHP utilizando sessões, cookies ou campos ocultos do formulário.


97) É possível estender o tempo de execução de um script PHP?

O uso de set_time_limit(intseconds) nos permite estender o tempo de execução de um script PHP. O limite padrão é 30 segundos.


98) É possível destruir um cookie?

Sim, é possível definindo o cookie com prazo de validade passado.


99) Qual é o tempo de sessão padrão em PHP?

O tempo de sessão padrão no php é até o fechamento do navegador


100) É possível usar componente COM em PHP?

Sim, é possível integrar componentes (distribuídos) do Component Object Model ((D)COM) em scripts PHP que são fornecidos como uma estrutura.


101) Explique se é possível compartilhar uma única instância de um Memcache entre vários projetos PHP?

Sim, é possível compartilhar uma única instância do Memcache entre vários projetos. Memcache é um espaço de armazenamento de memória e você pode executar o memcache em um ou mais servidores. Você também pode configurar seu cliente para se comunicar com um conjunto específico de instâncias. Assim, você pode executar dois processos Memcache diferentes no mesmo host e ainda assim eles serem completamente independentes. A menos que você tenha particionado seus dados, será necessário saber de qual instância obter ou colocar os dados.


102) Explique como você pode atualizar o Memcached ao fazer alterações no PHP?

Quando o PHP muda você pode atualizar o Memcached por

  • Limpando o cache proativamente: Limpando o cache quando uma inserção ou atualização é feita
  • Redefinindo o cache: É semelhante ao primeiro método, mas em vez de apenas excluir as chaves e aguardar a próxima solicitação de dados para atualizar o cache, redefina os valores após a inserção ou atualização.

Essas perguntas da entrevista também ajudarão em sua viva (oral)