When filtering a URL filter_var()
will return the filtered data, in this case the URL, or false if a valid URL cannot be found:
URL: example.com
var_dump(filter_var('example.com', FILTER_VALIDATE_URL));
var_dump(filter_var('example.com', FILTER_VALIDATE_URL, FILTER_FLAG_SCHEME_REQUIRED));
var_dump(filter_var('example.com', FILTER_VALIDATE_URL, FILTER_FLAG_HOST_REQUIRED));
var_dump(filter_var('example.com', FILTER_VALIDATE_URL, FILTER_FLAG_PATH_REQUIRED));
var_dump(filter_var('example.com', FILTER_VALIDATE_URL, FILTER_FLAG_QUERY_REQUIRED));
Results:
bool(false)
bool(false)
bool(false)
bool(false)
bool(false)
URL: http://example.com
var_dump(filter_var('<http://example.com>', FILTER_VALIDATE_URL));
var_dump(filter_var('<http://example.com>', FILTER_VALIDATE_URL, FILTER_FLAG_SCHEME_REQUIRED));
var_dump(filter_var('<http://example.com>', FILTER_VALIDATE_URL, FILTER_FLAG_HOST_REQUIRED));
var_dump(filter_var('<http://example.com>', FILTER_VALIDATE_URL, FILTER_FLAG_PATH_REQUIRED));
var_dump(filter_var('<http://example.com>', FILTER_VALIDATE_URL, FILTER_FLAG_QUERY_REQUIRED));
Results:
string(18) "<http://example.com>"
string(18) "<http://example.com>"
string(18) "<http://example.com>"
bool(false)
bool(false)
URL: http://www.example.com
var_dump(filter_var('<http://www.example.com>', FILTER_VALIDATE_URL));
var_dump(filter_var('<http://www.example.com>', FILTER_VALIDATE_URL, FILTER_FLAG_SCHEME_REQUIRED));
var_dump(filter_var('<http://www.example.com>', FILTER_VALIDATE_URL, FILTER_FLAG_HOST_REQUIRED));
var_dump(filter_var('<http://www.example.com>', FILTER_VALIDATE_URL, FILTER_FLAG_PATH_REQUIRED));
var_dump(filter_var('<http://www.example.com>', FILTER_VALIDATE_URL, FILTER_FLAG_QUERY_REQUIRED));
Results:
string(22) "<http://www.example.com>"
string(22) "<http://www.example.com>"
string(22) "<http://www.example.com>"
bool(false)
bool(false)
URL: http://www.example.com/path/to/dir/
var_dump(filter_var('<http://www.example.com/path/to/dir/>', FILTER_VALIDATE_URL));
var_dump(filter_var('<http://www.example.com/path/to/dir/>', FILTER_VALIDATE_URL, FILTER_FLAG_SCHEME_REQUIRED));
var_dump(filter_var('<http://www.example.com/path/to/dir/>', FILTER_VALIDATE_URL, FILTER_FLAG_HOST_REQUIRED));
var_dump(filter_var('<http://www.example.com/path/to/dir/>', FILTER_VALIDATE_URL, FILTER_FLAG_PATH_REQUIRED));
var_dump(filter_var('<http://www.example.com/path/to/dir/>', FILTER_VALIDATE_URL, FILTER_FLAG_QUERY_REQUIRED));
Results:
string(35) "<http://www.example.com/path/to/dir/>"
string(35) "<http://www.example.com/path/to/dir/>"
string(35) "<http://www.example.com/path/to/dir/>"
string(35) "<http://www.example.com/path/to/dir/>"
bool(false)
URL: http://www.example.com/path/to/dir/index.php
var_dump(filter_var('<http://www.example.com/path/to/dir/index.php>', FILTER_VALIDATE_URL));
var_dump(filter_var('<http://www.example.com/path/to/dir/index.php>', FILTER_VALIDATE_URL, FILTER_FLAG_SCHEME_REQUIRED));
var_dump(filter_var('<http://www.example.com/path/to/dir/index.php>', FILTER_VALIDATE_URL, FILTER_FLAG_HOST_REQUIRED));
var_dump(filter_var('<http://www.example.com/path/to/dir/index.php>', FILTER_VALIDATE_URL, FILTER_FLAG_PATH_REQUIRED));
var_dump(filter_var('<http://www.example.com/path/to/dir/index.php>', FILTER_VALIDATE_URL, FILTER_FLAG_QUERY_REQUIRED));
Results: