忽略 PHP 上的媒体 url
Ignore media url on PHP
有什么方法可以忽略所有 url 包含媒体的内容吗?
我正在使用这条线:
preg_match_all("/((?:http|https):\/\/(?:www\.)*(?:[a-zA-Z0-9_\-]{1,15}\.+[a-zA-Z0-9_]{1,}){1,}(?:[a-zA-Z0-9_\/\.\-\?\&\:\%\,\!\;]*))/", $content, $matches);
因此,我需要忽略此链接(以及所有媒体类型):
mydomain.com/content.jpg
mydomain.com/content.gif
mydomain.com/content.svg
...
提前致谢
首先创建一个要跳过的项目数组,并根据该数组过滤 URL,然后验证 URL 是否满足第一个条件。我希望这对你有用...
<?php
$media = array("mp3", "mp4", "mov", "flv", "wmv", "avi", "png", "gif", "jpg", "bmp");
$media_imp = implode('|', $media);
$urls = array('http://www.example.com/image.jpg','http://www.example.com/hello.mp3','http://www.example.com/content.png','http://www.example.com/content.php');
foreach($urls as $url)
{
if(!preg_match('/^.*\.('.$media_imp.')$/i', $url))
{
$regex ='/(?:http|https)?(?:\:\/\/)?(?:www.)?(([A-Za-z0-9-]+\.)*[A-Za-z0-9-]+\.[A-Za-z]+)(?:\/.*)?/im';
if(preg_match($regex, $url, $matches))
{
echo "URL Without Media : ".$url;
echo "<br>";
}
}
}
?>
实例:CLICK HERE
有什么方法可以忽略所有 url 包含媒体的内容吗? 我正在使用这条线:
preg_match_all("/((?:http|https):\/\/(?:www\.)*(?:[a-zA-Z0-9_\-]{1,15}\.+[a-zA-Z0-9_]{1,}){1,}(?:[a-zA-Z0-9_\/\.\-\?\&\:\%\,\!\;]*))/", $content, $matches);
因此,我需要忽略此链接(以及所有媒体类型):
mydomain.com/content.jpg
mydomain.com/content.gif
mydomain.com/content.svg
...
提前致谢
首先创建一个要跳过的项目数组,并根据该数组过滤 URL,然后验证 URL 是否满足第一个条件。我希望这对你有用...
<?php
$media = array("mp3", "mp4", "mov", "flv", "wmv", "avi", "png", "gif", "jpg", "bmp");
$media_imp = implode('|', $media);
$urls = array('http://www.example.com/image.jpg','http://www.example.com/hello.mp3','http://www.example.com/content.png','http://www.example.com/content.php');
foreach($urls as $url)
{
if(!preg_match('/^.*\.('.$media_imp.')$/i', $url))
{
$regex ='/(?:http|https)?(?:\:\/\/)?(?:www.)?(([A-Za-z0-9-]+\.)*[A-Za-z0-9-]+\.[A-Za-z]+)(?:\/.*)?/im';
if(preg_match($regex, $url, $matches))
{
echo "URL Without Media : ".$url;
echo "<br>";
}
}
}
?>