在img src中设置当前url + string

时间:2015-04-11 15:26:15

标签: php

我尝试使用goqr.me API创建基于当前网址的QR码:https://api.qrserver.com/v1/create-qr-code/?size=150x150&data=所以我需要生成此代码 <img src="https://api.qrserver.com/v1/create-qr-code/?size=150x150&data=**currentURL**">

我尝试的事情:

1)

<?php 
    function getUrl() { 
    $url  = @( $_SERVER["HTTPS"] != 'on' ) ? 'http://'.$_SERVER["SERVER_NAME"] :  'https://'.$_SERVER["SERVER_NAME"]; 
    $url .= ( $_SERVER["SERVER_PORT"] !== 80 ) ? ":".$_SERVER["SERVER_PORT"] : ""; $url .= $_SERVER["REQUEST_URI"]; 
    echo '<img src="https://api.qrserver.com/v1/create-qr-code/?size=150x150&data='.$url;
    } ?>

2)

<img src="https://api.qrserver.com/v1/create-qr-code/?size=150x150&data=<?php function getUrl() { 
     $url  = @( $_SERVER["HTTPS"] != 'on' ) ? 'http://'.$_SERVER["SERVER_NAME"] :  'https://'.$_SERVER["SERVER_NAME"]; 
     $url .= ( $_SERVER["SERVER_PORT"] !== 80 ) ? ":".$_SERVER["SERVER_PORT"] : ""; $url .= $_SERVER["REQUEST_URI"]; echo $url;} ?>">

正如您所看到的,我不擅长PHP编程。我真的希望你能帮助我。

1 个答案:

答案 0 :(得分:1)

在你的第二个例子中,你声明了这个函数并且没有调用它,所以没有任何东西被写出来。

第二个例子可以改为:

<img src="https://api.qrserver.com/v1/create-qr-code/?size=150x150&data=<?php function getUrl() { 
 $url  = @( $_SERVER["HTTPS"] != 'on' ) ? 'http://'.$_SERVER["SERVER_NAME"] :  'https://'.$_SERVER["SERVER_NAME"]; 
 $url .= ( $_SERVER["SERVER_PORT"] !== 80 ) ? ":".$_SERVER["SERVER_PORT"] : ""; $url .= $_SERVER["REQUEST_URI"]; echo $url;} getUrl(); ?>">

或者它看起来会更好:

<?php 
function getUrl() { 
    $url  = @( $_SERVER["HTTPS"] != 'on' ) ? 'http://'.$_SERVER["SERVER_NAME"] :  'https://'.$_SERVER["SERVER_NAME"]; 
    $url .= ( $_SERVER["SERVER_PORT"] !== 80 ) ? ":".$_SERVER["SERVER_PORT"] : ""; $url .= $_SERVER["REQUEST_URI"]; 
    return $url;
} 
?>

<img src="https://api.qrserver.com/v1/create-qr-code/?size=150x150&data=<?= getUrl(); ?> ">