在 php 中得到完整的 URL,没有空格

getting full URL in php without white spaces

我正在尝试使用移动浏览器将我网站上的完整 URL 分享到 whatsapp, 我试过这个来检索完整的 URL 并且当我回显变量时它工作得很好,但是当我使用移动浏览器共享时,它给我 link 和白色 space 像这样: http://127.0.0.1/?id= 40
无法打开,如何在没有 space 的情况下获得完整的回显 link?

   <?php
    $alink= (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on' ?

            "https" : "http") . "://" . $_SERVER['HTTP_HOST'] .

        $_SERVER['REQUEST_URI'];
    ?>
    

//To Share
    <a href="whatsapp://send?text=<?php echo $message['title'] ?> <?php echo "\r\n" ?> <?php echo $alink ?> <?php echo "\r\n" ?> <?php echo $myText ?>"
                           data-action="share/whatsapp/share">Share To Whatsapp</a>

标准条件 [$_SERVER['HTTPS'] == 'on'] 不适用于负载均衡器后面的服务器:

$isSecure = false;
    if (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on') {
        $isSecure = true;
    }
    elseif (!empty($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https' || !empty($_SERVER['HTTP_X_FORWARDED_SSL']) && $_SERVER['HTTP_X_FORWARDED_SSL'] == 'on') {
        $isSecure = true;
    }
    $REQUEST_PROTOCOL = $isSecure ? 'https' : 'http';

    echo $REQUEST_PROTOCOL."://".$_SERVER['HTTP_HOST'];

我认为这会对您有所帮助,请参阅 PHP 文档

$alink = str_replace(' ', '', $alink)

Manual

通过 javascript 和 window.location.href 获得完整的 url 我的 file.php

...
<div id="url"></div>
...
<script type="text/javascript">
   document.querySelector('#url').innertHTML = window.location.href
</script>