繁体   English   中英

如何在PHP中回显正斜杠

[英]How do I echo forward slash in php

我想在PHP中回显正斜杠,如下所示

<a class="submenu" href="<?php echo base_url('products').'/'.rawurlencode('Agarbatte/Candle');?>"

Agarbatte/Candle不是目录,但是当我执行此操作时, href将此目录作为目录并给我未找到的错误页面。

任何帮助将不胜感激。

URL中的斜杠将始终被视为目录分隔符。 而且,如果将其替换为其他东西,您将不再有任何斜线。 但这很可能是最简单的解决方案。

如果URL路径和文件系统之间有1:1映射,那么您将很不走运。 但是,如果您的应用程序使用“路由层”,则可以修改它,使其在满足某些标准时不将/视为分隔符。

只需在“ Agarbatte /蜡烛”上使用“ urlencode”。 我对“ rawurlencode”没有特别的需求。

尽管您可以像其他人所说的那样使用urlencode()函数,但我还是建议您不要养成这种习惯。 假设您将这些产品存储在数据库中,请使用id并且永远不会遇到这些问题。

例如,如果Candle产品在数据库中的id为6,则PHP应该解析为: <a class="submenu" href='products/6'>

此外,您可以在此处采取一些捷径,从长远来看将为您提供帮助。

  1. 代替<?php echo "something" ?>打开php.ini中的php short标签,并使用<?= "something" ?>
  2. 您无需在每次编写base_url都调用base_url 适当使用<base> HTML标记: <head> <base href="http://localhost/yourapp/"> <head>

所以...使用1和2之后说

<a href='products/<?= $id;?>'><?= $name_of_product ?></a>

如何在网址中然后在输出页面上使用“ Agarbatte-Candle”

$url_bit=string_replace('-','/',$url_bit);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM