添加两个头函数后,PHP“页面没有正确重定向”

I'm trying to check the url and if its missing any of my get parameters i am trying to redirect, and theres the second function which checks if folder parameter doesn't end up with "/" it adds it. But for some reason i get "The page isn’t redirecting properly" error in firefox and chrome for the main landing page without parameters. here's my code

<?php
//checking if none of the methods are present and assigning them to url
if (!isset($_GET['page']) || !isset($_GET['sort']) || !isset($_GET['type']) || !isset($_GET['folder']) || $_GET['folder']==="/" || $_GET['folder']==="\\" || $_GET['folder']==="uploads") {
    header('location:' . URL .'?page=0&sort=name&type=asc&folder=uploads/');
}
//Checking if core direcotry doesnt exists and creating it
if(!is_dir("uploads")){
  mkdir("uploads");
}

function endsWith($haystack, $needle)
{
    $length = strlen($needle);
    if ($length == 0) {
        return true;
    }
    return (substr($haystack, -$length) === $needle);
}
if (!endsWith($_GET['folder'], "/")) {
    $boom = explode("/", $_GET['folder']);
    $newurl = end($boom);
    header('location:' . URL .$newurl.'/');
}

I tried to remove the second function it works but i need to add slash in the end of folder parameter. How can i achieve this?

Changed the second function to this. And now it works

function endsWith($haystack, $needle)
{
    $length = strlen($needle);
    if ($length == 0) {
        return true;
    }
    return (substr($haystack, -$length) === $needle);
}
if (isset($_GET['folder'])) {
  if (!endsWith($_GET['folder'], "/")) {
    $boom = explode("/", $_GET['folder']);
    $newurl = end($boom);
    header('location: ' . URL .$newurl.'/');
  }
}