Fácil PHP

Incluindo uma saudação

Enunciado

Crie dois arquivos: saudacao.php que define uma função ola($nome) retornando "Olá, $nome!", e index.php que inclui esse arquivo com require e exibe o resultado para o nome "Ana". Use __DIR__ para montar o caminho.

Requisitos

  • O arquivo saudacao.php deve conter a função ola.
  • O arquivo index.php deve usar require com __DIR__.
  • A saída deve ser exatamente Olá, Ana!.

Código inicial

<?php
// index.php

// Inclua o arquivo saudacao.php usando require e __DIR__

// Chame a função ola com 'Ana' e exiba o resultado
echo ola('Ana');
?>

Saída esperada

Olá, Ana!
Ver dica

Lembre-se de que __DIR__ contém o diretório do arquivo atual. Use a concatenação com '/saudacao.php'.

Mostrar solução
<?php
// saudacao.php
function ola($nome) {
    return "Olá, $nome!";
}
?>
<?php
// index.php
// Inclui o arquivo de funções usando caminho absoluto com __DIR__
require __DIR__ . '/saudacao.php';

// Chama a função e exibe
 echo ola('Ana');
?>

Passo a passo

  1. No arquivo saudacao.php, definimos a função ola que recebe um nome e retorna a saudação formatada.
  2. No index.php, usamos require para incluir saudacao.php. O caminho é montado com __DIR__ . '/saudacao.php', garantindo que o arquivo seja encontrado independentemente do diretório de execução.
  3. Chamamos ola('Ana') e exibimos o resultado com echo.

Por que funciona

O require insere o conteúdo de saudacao.php no ponto da chamada, tornando a função ola disponível no escopo global. Como usamos __DIR__, o caminho é absoluto e não depende do diretório atual, evitando falhas.

Erros comuns

  • Esquecer o __DIR__ e usar apenas 'saudacao.php': se o script for executado de outro diretório, o arquivo não será encontrado e ocorrerá erro fatal.
  • Usar include em vez de require: se o arquivo não existir, o script continuaria e a chamada a ola causaria erro fatal por função inexistente.
  • Esquecer o ; no final da linha do require: erro de sintaxe.

Outra forma de resolver

Usar require_once para garantir que o arquivo não seja incluído duas vezes, embora neste exemplo não haja repetição.

Saída esperada

Olá, Ana!