function drupal_match_path
drupal_match_path($path, $patterns)
Check if a path matches any pattern in a set of patterns.
Parameters
$path: The path to match.
$patterns: String containing a set of patterns separated by \n, \r or \r\n.
Return value
Boolean value: TRUE if the path matches a pattern, FALSE otherwise.
File
- includes/path.inc, line 312
- Functions to handle paths in Drupal, including path aliasing.
Code
function drupal_match_path($path, $patterns) { $regexps = &drupal_static(__FUNCTION__); if (!isset($regexps[$patterns])) { // Convert path settings to a regular expression. // Therefore replace newlines with a logical or, /* with asterisks and the <front> with the frontpage. $to_replace = array( '/(\r\n?|\n)/', // newlines '/\\\\\*/', // asterisks '/(^|\|)\\\\<front\\\\>($|\|)/' // <front> ); $replacements = array( '|', '.*', '\1' . preg_quote(variable_get('site_frontpage', 'node'), '/') . '\2' ); $patterns_quoted = preg_quote($patterns, '/'); $regexps[$patterns] = '/^(' . preg_replace($to_replace, $replacements, $patterns_quoted) . ')$/'; } return (bool) preg_match($regexps[$patterns], $path); }
© 2001–2016 by the original authors
Licensed under the GNU General Public License, version 2 and later.
Drupal is a registered trademark of Dries Buytaert.
https://api.drupal.org/api/drupal/includes!path.inc/function/drupal_match_path/7.x