如何在PHP中删除URL协议并从用户输入中斜杠

2022-08-30 10:12:45

示例用户输入

http://example.com/
http://example.com/topic/
http://example.com/topic/cars/
http://www.example.com/topic/questions/

我想要一个PHP函数来使输出像

example.com
example.com/topic/
example.com/topic/cars/
www.example.com/topic/questions/

答案 1

ereg_replace现已弃用,因此最好使用:

$url = preg_replace("(^https?://)", "", $url );

这将删除或http://https://


答案 2

您应该使用一组“不允许的”术语,并使用 strposstr_replace 从传入的 URL 中动态删除它们:

function remove_http($url) {
   $disallowed = array('http://', 'https://');
   foreach($disallowed as $d) {
      if(strpos($url, $d) === 0) {
         return str_replace($d, '', $url);
      }
   }
   return $url;
}

推荐