PHP/Laravel入门-将Http://和Https://添加到URL路径
我正在尝试使用一个输入字段来添加网站/url。要成功提交表格,我只需要www.domainname.com;但是,提交后,如果不是提交表单的人添加的,我想在http://或https://上添加 验证过程如下所示:PHP/Laravel入门-将Http://和Https://添加到URL路径,php,validation,url,laravel,input,Php,Validation,Url,Laravel,Input,我正在尝试使用一个输入字段来添加网站/url。要成功提交表格,我只需要www.domainname.com;但是,提交后,如果不是提交表单的人添加的,我想在http://或https://上添加 验证过程如下所示: public function name($id) { $input = Input::all(); $validator = Validator::make( $input, array( 'website' => 'active_url', ) );
public function name($id) {
$input = Input::all();
$validator = Validator::make(
$input,
array(
'website' => 'active_url',
)
);
}
为此,需要一个if语句。我试着按照下面列出的代码插入一些东西,但没有任何运气
if (!preg_match("~^(?:f|ht)tps?://~i", $url)) {
$url = "http://" . $url;
}
我对PHP相当陌生,刚刚开始使用Laravel,所以如果有任何困惑或信息不足,我提前道歉。非常感谢您的帮助。这应该可以:
if (stripos($url, "http://") === false && stripos($url, "https://") === false) {
$url = "http://" . $url;
}
stripos
不区分大小写,因此用户键入的url前缀是否为小写字母并不重要。您可以简单地从开始剥离方案,然后添加它
$url = preg_replace('#^https?://#', '', $url);
$url = "http://" . $url;
或
或
我认为不需要验证,。。也许它能帮助你 @alix-axel码
function addhttp($url) {
if (!preg_match("~^(?:f|ht)tps?://~i", $url)) {
$url = "http://" . $url;
}
return $url;
}
if (!preg_match('#^http(s)?://#', $url)) {
$url = 'http://' . $url;
}
function addhttp($url) {
if (!preg_match("~^(?:f|ht)tps?://~i", $url)) {
$url = "http://" . $url;
}
return $url;
}