Para obtener la url actual en php basta con usar la variable predefinida de php $_SERVER con los índices «HTTP_HOST» para obtener el dominio y «REQUEST_URI» para obtener la página.

Como ejemplo vamos a poner que la página actual es: http://midominio.com/pagina/index.php?user=pepito

echo $_SERVER['HTTP_HOST'];
// Salida: midominio.com

echo $_SERVER['REQUEST_URI'];
// Salida: /pagina/index.php?user=pepito

Y para finalizar podemos hacer una función que devuelva ya la url completa con el protocolo http/s incluido:

 function url_actual(){
  if(isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on') {
    $url = "https://"; 
  }else{
    $url = "http://"; 
  }
  echo $url . $_SERVER['HTTP_HOST'] .  $_SERVER['REQUEST_URI'];
 }

url_actual();
// Salida: http://midominio.com/pagina/index.php?user=pepito

Agradezco tu comentario 🤘