在Php中添加动态链接

时间:2012-03-27 10:17:14

标签: php string hyperlink anchor

我一直在使用以下内容在我正在编写的页面上添加动态链接,它工作正常并且在页面上显示它应该如何但我无法帮助但是认为我的写作方式有点倒退因为它看起来很乱。写它的正确方法是什么,好像我把它全部放在一行中它不起作用?...

echo '<a href="./customer-files/';
        echo $customerID;
        echo '/';
        echo $filename->getFilename();
        echo '">';
              echo $filename->getFilename();
    echo '</a>';

5 个答案:

答案 0 :(得分:1)

尝试

echo "<a href=\"./customer-files/{$customerID}/{$filename->getFilename()}\">{$filename->getFilename()}</a>";

Here文档中有很多关于如何连接输出的例子。

答案 1 :(得分:0)

连接是你的朋友。使用.将多个字符串表达式合并为一个。

echo '<a href="./customer-files/'.$customerID.'/'.$filename->getFilename().'">'.$filename->getFilename()/'</a>';

更好的方法是

$filename = $filename -> getFilename(); //cache the filename
echo "<a href='/$customerId/$filename'>$filename</a>";
  // ^ On this echo NOTICE that variables can be DIRECTLY placed inside Double qoutes.

答案 2 :(得分:0)

我会这样做:

$fn = $filename->getFilename();
$link = $customerID . '/' . $fn;
echo '<a href="'.$link.'">'.$fn.'</a>';

答案 3 :(得分:0)

我会像这样接近它:

$safe_customer_id = htmlspecialchars(urlencode($customerID));
$safe_filename = htmlspecialchars(urlencode($filename->getFilename()));
$safe_label = htmlspecialchars($filename->getFilename());
echo "<a href=\"./customer-files/$safe_customer_id/$safe_filename\">$safe_label</a>";

答案 4 :(得分:0)

如果你正在使用模板层,那么只有在你需要时才能更好地进入PHP:

<a href="./customer-files/<?php
    echo $customerID . '/' . $filename->getFilename()
?>">
    <?php echo $filename->getFilename() ?>
</a>

这样,您的IDE将正确地突出显示您的HTML以及PHP。我还确保所有PHP都使用单行blob,这是模板的最佳方法(冗长的语句应该放到控制器/脚本中)。