url() 函数在Drupal开发过程中比较实用,也是Drupal开发中使用频率很高的函数。url() 函数可以生成一个内部URL或者是一个外部URL。
例:
//输出:Visit the <a href=”/admin”>settings</a> page
t(‘Visit the <a href=”@url” >settings</a> page’ , array(‘@url’ => url(‘admin’ )));
$path: (可选) 一个内部URL 或者是一个外部URL, 例如 “node/34”或者 “http://drupalla.
com/project/modules”。 默认值是‘<front>’,就是首页的地址。
例:
//输出: /node/34
$url_examples[‘普通路径’ ] = url(‘node/34’ );
//输出: http://drupalla.com/project/modules
$url_examples[‘外部路径’ ] = url(‘http://drupalla.com/project/modules’ );
//输出: /
$url_examples[‘首页’ ] = url();
$options: (可选) 一个数组,主要存储附加属性, 有下面元素:
‘query’: Query 参数,就是接收的参数。
例:
‘fragment’: 片段标识符(锚)点附加到URL。 不包含‘#’字符。
例:
//输出: /node/34#footer $url_examples[‘fragment’ ] = url(‘node/34’ , array(‘fragment’ => ’footer’ )); //输出: /node/34 $url_examples[‘普通路径’ ] = url(‘node/34’ ); //输出: http://drupalla.com/project/modules $url_examples[‘外部路径’ ] = url(‘http://drupalla.com/project/modules’ ); //输出: / $url_examples[‘首页’ ] = url(); //输出: /admin/modules?destination=admin $url_examples[‘query’ ] = url(‘node/34’ , array(‘query’ => array(‘destiantion’ =>’admin’ ))); //输出: /node/34#footer $url_examples[‘fragment’ ] = url(‘node/34’ , array(‘fragment’ => ’footer’ )); ‘absolute’: 默认是 FALSE. 是否使用绝对路径。 例: //输出: http://drupalla.com/node/34 $url_examples[‘绝对路径’ ] = url(‘node/34’ , array(‘absolute’ => TRUE));
‘alias’: 默认是 FALSE. 是否使用别名。
‘external’: 是否使用外部路径。
‘language’: 语言。
‘https’: 是否使用https。
‘base_url’: 基础url,只在内部使用,如多语言。
‘prefix’: 前缀,只在内部使用,如多语言。
‘script’: 当没启用伪静态时候的脚本文件名, 例如‘index.php’. 默认为空.
‘entity_type’:url()地址中的entity 类型 。
‘entity’: Entity 类型(例如node)。