discuz 获取当前url
时间 : 2024-02-25 05:21:02声明: : 文章内容来自网络,不保证准确性,请自行甄别信息有效性

最佳答案

要在Discuz中获取当前URL,可以使用以下方法:

1. 在Discuz的模板文件中使用全局变量`$_G['siteurl']`获取当前网站的URL。例如,使用`$_G['siteurl']`获取当前页面的URL:

$currentUrl = $_G['siteurl'];

2. 使用Discuz的内置函数`$_G['siteurl']`获取当前网站的URL。例如,使用`$_G['siteurl']`获取当前页面的URL:

$currentUrl = $_G['siteurl'];

3. 使用PHP的`$_SERVER['HTTP_HOST']`和`$_SERVER['REQUEST_URI']`变量组合得到当前URL。例如:

$protocol = ((!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] != 'off') || $_SERVER['SERVER_PORT'] == 443) ? "https://" : "http://";

$currentUrl = $protocol . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];

无论使用哪种方法,都可以在Discuz中获取当前URL。根据需要选择合适的方法。

其他答案

要获取当前URL地址,可以使用Discuz论坛的内置函数和全局变量来实现。

在Discuz论坛中,可以通过使用函数`$_SERVER['REQUEST_URI']`来获取当前URL地址。`$_SERVER`是一个内置的PHP全局变量,用于存储与服务器相关的信息,包括请求的URL地址。

下面是一个获取当前URL地址的示例代码:

```php

$currentUrl = $_SERVER['REQUEST_URI'];

上述代码将当前URL地址存储在变量`$currentUrl`中,你可以根据需要使用这个值进行后续操作,比如输出到页面上或者进行其他处理。

需要注意的是,这个方法获取的URL地址是相对路径,仅包括路径和查询参数,并不包括协议和域名部分。如果你需要获取完整的URL地址,可以结合使用`$_SERVER['HTTP_HOST']`和`$_SERVER['REQUEST_SCHEME']`来获取完整的URL。

下面是一个获取完整URL地址的示例代码:

```php

$protocol = strtolower($_SERVER['REQUEST_SCHEME']);

$host = $_SERVER['HTTP_HOST'];

$currentUrl = $protocol . '://' . $host . $_SERVER['REQUEST_URI'];

上述代码将完整的URL地址存储在变量`$currentUrl`中,你可以根据需要使用这个值进行后续操作。

总结起来,要获取当前URL地址,你可以使用`$_SERVER['REQUEST_URI']`来获取相对路径的URL地址,或者结合`$_SERVER['HTTP_HOST']`和`$_SERVER['REQUEST_SCHEME']`来获取完整的URL地址。