I am using XAMPP on Windows Vista. In my development, I have http://127.0.0.1/test_website/.

如何使用PHP获得http://127.0.0.1/test_website/

我试过这样的东西,但都不管用.

echo dirname(__FILE__)
or
echo basename(__FILE__);
etc.

推荐答案

试试这个:

<?php echo "http://" . $_SERVER['SERVER_NAME'] . $_SERVER['REQUEST_URI']; ?>

了解更多关于$_SERVER predefined variable的信息.

如果您计划使用https,您可以使用:

function url(){
  return sprintf(
    "%s://%s%s",
    isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] != 'off' ? 'https' : 'http',
    $_SERVER['SERVER_NAME'],
    $_SERVER['REQUEST_URI']
  );
}

echo url();
#=> http://127.0.0.1/foo

this answer,请确保正确配置您的Apache,以便您可以安全地依赖SERVER_NAME.

<VirtualHost *>
    ServerName example.com
    UseCanonicalName on
</VirtualHost>

NOTE:如果你依赖HTTP_HOST键(包含用户输入),你仍然需要进行一些清理,删除空格、逗号、回车符等.任何对域无效的字符.查看PHP内置parse_url函数以获取示例.

Php相关问答推荐

PHP -使用preg_match在字符串中进行匹配

如何在WordPress中为特定自定义帖子类型自定义URL struct

管理员订单列表中的自定义列与WooCommerce 8.6.1一起消失

如何修复条带元素中的错误&&客户端_机密&

根据未用于变体的产品属性隐藏WooCommerce发货方式

MULTI UPDATE Laravel为什么只能更新我的第一行

按列值将二维数组排序为不超过N个的递增组

HTAccess重写一些URL,但将所有其他URL发送到另一个页面

fpm-php + nginx + POST数据

wp_insert_post() 和 WordPress 中查询字符串的多个帖子

htaccess 重定向子域错误的 url

根据支付网关选项更改 WooCommerce Checkout 上的立即付款按钮文本

将产品数量、名称和结帐链接添加到 WooCommerce 添加到购物车消息

如何为自定义帖子类型的自定义角色提供功能

根据WooCommerce中选定的变体重量更改输入数量步值

在PHP WordPress插件中使用变量连接路径时的问题解决方法

使用来自 PHP 表单的数据更新 xml 命名空间

如何在 WooCommerce 中显示每个自定义选项卡的内容

将样式文件或脚本引入WordPress模板

使用循环和引用而不是递归创建分层/父子数组