doucheng7808 2017-12-25 14:59
浏览 25

从数组php中提取链接

I am trying to isolate link from array but in foreach loop it does not work for me.it cosider both elements as a link.

i just want to hyper link google.com and not bakery text but i am getting link on both so if part is not working and its considering bakery as a link.

$services=array('Bakery','www.google.com');

foreach($services as $service):

    if (!filter_var($service, FILTER_VALIDATE_URL) === false) {
        $service = $service;
    } else {
        $service = '<a href='.$service.'>'.$service.'</a>';
    }
    echo $service;
endforeach;
  • 写回答

1条回答 默认 最新

  • douxi3554 2017-12-25 15:51
    关注

    The problem here is with the following statement:

    if (!filter_var($service, FILTER_VALIDATE_URL) === false)
        ^                                              ^^^^^
    

    You're using a double negative here, being the ! operator which means "not" and you're using "false".

    Either remove the ! or change the "false" to "true".

    You're also going to need to add http:// to the url you wish to use in order to validate properly.

    $services=array('Bakery','www.google.com');
    

    will fail for the Google link. If you want it to validate, you will need to change it to:

    $services=array('Bakery','http://www.google.com');
    
    评论

报告相同问题?

悬赏问题

  • ¥15 Vue3 大型图片数据拖动排序
  • ¥15 划分vlan后不通了
  • ¥15 GDI处理通道视频时总是带有白色锯齿
  • ¥20 用雷电模拟器安装百达屋apk一直闪退
  • ¥15 算能科技20240506咨询(拒绝大模型回答)
  • ¥15 自适应 AR 模型 参数估计Matlab程序
  • ¥100 角动量包络面如何用MATLAB绘制
  • ¥15 merge函数占用内存过大
  • ¥15 使用EMD去噪处理RML2016数据集时候的原理
  • ¥15 神经网络预测均方误差很小 但是图像上看着差别太大