You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PHP使用str_contains判断URL是否包含指定字符串时出错如何解决

代码问题修复

存在的问题

  • 语法错误:首个echo语句的字符串未闭合,echo "amazon;缺少右侧双引号,会触发PHP语法解析报错。
  • 逻辑错误:两个if判断相互独立,else分支仅与第二个if绑定。当URL包含amazon.de但不含brickset时,会同时输出amazon和no URL,不符合预期。
  • 匹配规则错误:需求要求匹配brickset.com,原代码仅判断brickset字符串,会误匹配其他包含brickset关键词的非目标域名。

修复后代码

function url_mapping_name( $urlname ) {
    if (str_contains($urlname, 'amazon.de')) {
        return 'amazon';
    }
    if (str_contains($urlname, 'brickset.com')) {
        return 'brickset';
    }
    return 'no URL';
}

如果需要直接输出结果,调用时使用echo url_mapping_name($目标URL变量);即可。

逻辑说明

按优先级依次判断匹配规则,命中后直接返回结果,避免多规则同时触发输出;所有规则未命中时返回默认值,匹配字符串严格对齐需求要求。


内容的提问来源于stack exchange,提问作者Michal Kovalčík

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 06:24:04