Yii2 url 没有 http,https 的验证
Yii2 url validation without http,https
我在我的模型中使用了 url 验证码,但它给我错误。
我只是验证用户是否只输入 google.com 或 yahoo.com 而不是 http,www 是必需的。
我该怎么做。
[['thankyou_page_url','confirmation_page_url'],'url'],
我现在无法测试它。但我认为您需要添加 defaultScheme
选项。 defaultScheme
的默认值是null
,这意味着URL中必须有一个有效的方案。
如果你把它改成
[['thankyou_page_url','confirmation_page_url'],'url', 'defaultScheme' => 'http'],
如果您未在输入中提供任何内容,将自动添加 http:// 部分。我认为如果将 defaultScheme
设置为空字符串,它也将允许 URL 没有方案。所以也许这行得通:
[['thankyou_page_url','confirmation_page_url'],'url', 'defaultScheme' => ''],
非常简单,只需从模式中删除 shemes 部分
['url', 'url', 'pattern'=>'/(([A-Z0-9][A-Z0-9_-]*)(\.[A-Z0-9][A-Z0-9_-]*)+)(?::\d{1,5})?(?:$|[?\/#])/i'],
我在我的模型中使用了 url 验证码,但它给我错误。 我只是验证用户是否只输入 google.com 或 yahoo.com 而不是 http,www 是必需的。 我该怎么做。
[['thankyou_page_url','confirmation_page_url'],'url'],
我现在无法测试它。但我认为您需要添加 defaultScheme
选项。 defaultScheme
的默认值是null
,这意味着URL中必须有一个有效的方案。
如果你把它改成
[['thankyou_page_url','confirmation_page_url'],'url', 'defaultScheme' => 'http'],
如果您未在输入中提供任何内容,将自动添加 http:// 部分。我认为如果将 defaultScheme
设置为空字符串,它也将允许 URL 没有方案。所以也许这行得通:
[['thankyou_page_url','confirmation_page_url'],'url', 'defaultScheme' => ''],
非常简单,只需从模式中删除 shemes 部分
['url', 'url', 'pattern'=>'/(([A-Z0-9][A-Z0-9_-]*)(\.[A-Z0-9][A-Z0-9_-]*)+)(?::\d{1,5})?(?:$|[?\/#])/i'],