Obtenha o nome do arquivo de script atual em PHP

Shraddha Paghdar 15 fevereiro 2024
PHP
Obtenha o nome do arquivo de script atual em PHP

Seu script pode precisar do nome do arquivo atual com o nome do diretório no qual está sendo executado no momento. Neste artigo tutorial, discutiremos como obter o nome do arquivo do script atual dentro do projeto.

O PHP oferece várias maneiras de descobrir o nome do arquivo atual. Primeiro, entenderemos brevemente todos os parâmetros e métodos e, em seguida, combiná-los para obter o resultado.

  • __FILE__:

    O PHP fornece 9 constantes mágicas que são usadas com base em seu uso. Essas constantes são criadas por várias extensões. Todas essas constantes são resolvidas durante o tempo de compilação. __FILE__ é uma das constantes mágicas que fornece o caminho do sistema de arquivos para o arquivo .php atual.

  • $_SERVER:

    $_SERVER é um array que contém informações sobre cabeçalhos, caminhos e localizações de script. O servidor web cria todas essas informações.

  • PHP_SELF:

    PHP_SELF é uma variável usada para obter o nome do arquivo do script atualmente em execução. É relativo à raiz do documento. Quando o usuário executa este comando na linha de comando, ele imprimirá as informações sobre o nome do script.

  • SCRIPT_FILENAME:

    Esta é uma variável usada para obter o nome do arquivo do script atualmente em execução, e a única diferença é que seu caminho é absoluto.

  • SCRIPT_NAME:

    Ele contém o caminho do script atual. Isso é útil para páginas que precisam apontar para si mesmas.

  • REQUEST_URI:

    O URI foi fornecido para acessar a localização da página, por exemplo, /index.html.

Agora vamos usar todos os comandos acima juntos para obter o nome do arquivo.

  1. $_SERVER['SCRIPT_NAME']:

    Um nome de arquivo principal com uma extensão de arquivo

  2. $_SERVER['PHP_SELF']:

    URL relativo do arquivo pai com a extensão do arquivo. Por exemplo, http://example.com/parentFolder/child.php seria /parentFolder/child.php.

  3. $_SERVER['SCRIPT_FILENAME']:

    URL completo do arquivo principal com uma extensão de arquivo

  4. $_SERVER['REQUEST_URI']:

    arquivo principal nome da pasta principal com

A função PHP integrada basename() retorna o nome base de um arquivo se o caminho do arquivo for fornecido como um parâmetro para a função basename().

  1. basename(__FILE__):

    Nome do arquivo atual com extensão de arquivo PHP.

  2. basename(__FILE__, '.php'):

    Nome do arquivo atual sem extensão de arquivo PHP.

  3. basename($_SERVER['PHP_SELF'], ".php"):

    Nome do arquivo atual sem extensão de arquivo PHP.

  4. basename($_SERVER['PHP_SELF']):

    Nome do arquivo atual com extensão de arquivo PHP.

  5. pathinfo(__FILE__, PATHINFO_FILENAME):

    Nome do arquivo atual sem extensão de arquivo PHP.

Amostra de código para obter o nome do arquivo de script atual em PHP

<?php
echo "\$_SERVER['SCRIPT_NAME']: ";
echo $_SERVER['SCRIPT_NAME'];
echo "\n";

echo "\$_SERVER['PHP_SELF']: ";
echo $_SERVER['PHP_SELF'];
echo "\n";

echo "\$_SERVER['SCRIPT_FILENAME']: ";
echo $_SERVER['SCRIPT_FILENAME'];
echo "\n";

echo "basename(__FILE__): ";
echo basename(__FILE__);
echo "\n";

echo "basename(__FILE__, '.php'): ";
echo basename(__FILE__, '.php');
echo "\n";

echo "basename(\$_SERVER['PHP_SELF'], '.php'): ";
echo basename($_SERVER['PHP_SELF'], '.php');
echo "\n";

echo "basename(\$_SERVER['PHP_SELF']): ";
echo basename($_SERVER['PHP_SELF']);
echo "\n";

echo "pathinfo(__FILE__, PATHINFO_FILENAME): ";
echo pathinfo(__FILE__, PATHINFO_FILENAME);
echo "\n";
?>

Resultado:

obter o nome do arquivo de script atual em PHP

Shraddha Paghdar avatar Shraddha Paghdar avatar

Shraddha is a JavaScript nerd that utilises it for everything from experimenting to assisting individuals and businesses with day-to-day operations and business growth. She is a writer, chef, and computer programmer. As a senior MEAN/MERN stack developer and project manager with more than 4 years of experience in this sector, she now handles multiple projects. She has been producing technical writing for at least a year and a half. She enjoys coming up with fresh, innovative ideas.

LinkedIn