dongzhuo3376 2016-07-25 20:21
浏览 70
已采纳

字符串不会在PHP中正确连接

I have a loop running in a PHP script that's part of a .inc.php (it's a header that reads from a .txt file so that it can add to it's navbar from information solely from the .txt). For example, in the .txt could be:

about

contact

support

It reads the text file in a line by line basis and returns each line as a string, which is then echoed out as a link in the navbar. For whatever reason, the about and contact links don't have the ".php" extension, but the support link does. No matter what's put into the .txt file, the last line of it will always get the extension, while the others don't. I've juggled around quotations within the echo statement, but to no avail. Any ideas as to how I can fix this?

<?php

    if (file_exists("pagespage.txt")) {

       $newFile = fopen('pagespage.txt', 'r');

       while (! feof($newFile)) {
           $pagename = fgets($newFile);
           $pagenamecap = ucwords($pagename);
           echo "<li><a class=button href=" . "$pagename.php>" . $pagenamecap . "</a></li>";
        }
    }
    ?>
  • 写回答

2条回答 默认 最新

  • dtwxt88240 2016-07-25 20:25
    关注

    Your rendered HTML looks like this:

    <li><a class=button href=contact
    .php>Contact
    </a></li>
    

    Can you see why this might be a problem?

    Firstly, add quotes around your attributes. Second, trim your string.

    $pagename = trim(fgets($newFile));
    $pagenamecap = ucfirst($pagename);
    echo '<li><a class="button" href="'.$pagename.'.php">'.$pagenamecap.'</a></li>';
    

    ("Support" didn't have this problem because it was the last line in the file, and therefore didn't have a newline at the end of it)

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 sqlite 附加(attach database)加密数据库时,返回26是什么原因呢?
  • ¥88 找成都本地经验丰富懂小程序开发的技术大咖
  • ¥15 如何处理复杂数据表格的除法运算
  • ¥15 如何用stc8h1k08的片子做485数据透传的功能?(关键词-串口)
  • ¥15 有兄弟姐妹会用word插图功能制作类似citespace的图片吗?
  • ¥200 uniapp长期运行卡死问题解决
  • ¥15 latex怎么处理论文引理引用参考文献
  • ¥15 请教:如何用postman调用本地虚拟机区块链接上的合约?
  • ¥15 为什么使用javacv转封装rtsp为rtmp时出现如下问题:[h264 @ 000000004faf7500]no frame?
  • ¥15 乘性高斯噪声在深度学习网络中的应用