Cita: PHP_SELF
El nombre del fichero que contiene el script que se esta ejecutando, relativo al directorio raíz de los documentos. Si PHP se está ejecutando como intérprete de línea de comandos, esta variable no está disponible.
HTTP_REFERER
La dirección de la página (si la hay) desde la que el navegador saltó a la página actual. Esto lo establece el navegador del usuario; no todos los navegadores lo hacen.
REMOTE_ADDR
La dirección IP desde la que el usuario está viendo la página actual.
Estas son las definiciones que da el sitio de php, entonces php_self tampoco te sirve y con remote_addr obtienes el ip del cliente.