Além de podermos usar a superglobal $_SERVER para saber o nome do ficheiro PHP, existe outra forma bem interessante de saber o nome do ficheiro onde estamos e de obter outros detalhes do mesmo.
É através da função pathinfo() que nos retorna informação acerca da path de um ficheiro na forma de uma array.
# Vamos supor que estamos em http://localhost/pasta/subpasta/teste.php
$ficheiro = $_SERVER['SCRIPT_NAME']; // Guarda o nome do ficheiro onde estamos
$detalhes_ficheiro = pathinfo($ficheiro);
echo $detalhes_ficheiro['dirname']; // O resultado é: http://localhost/pasta/subpasta/
echo $detalhes_ficheiro['basename']; // O resultado é: teste.php
echo $detalhes_ficheiro['extension']; // O resultado é: php
echo $detalhes_ficheiro['filename']; // O resultado é: teste
Traduzido e adaptado de pathinfo function to get file details of a file path.