【问题标题】:HTML / PHP - Textarea shows tabs / spaces from codeHTML / PHP - Textarea 显示代码中的制表符/空格
【发布时间】:2013-04-08 02:41:07
【问题描述】:

出于可读性原因,我的代码如下所示:

        <textarea cols="50" rows="5"  id="k99_brsa_settings[brsa_keep_settings_exp]"  name="k99_brsa_settings[brsa_keep_settings_exp]" />
            <?php echo $export; ?>
        </textarea>

我不知道如何在这里表示/显示tabs,但实际上是这样的:

[TAB][TAB][TAB][TAB]<textarea cols="50" rows="5" id="k99_brsa_settings[brsa_keep_settings_exp]"  name="k99_brsa_settings[brsa_keep_settings_exp]" />
[TAB][TAB][TAB][TAB][TAB]<?php echo $export; ?>
[TAB][TAB][TAB][TAB]</textarea>

或者更好的是带有图像(代码编辑器):

问题是,这些选项卡出现在输出中是这样的:

因为这些是数据库条目,所以当我保存时,它实际上会更改条目(添加制表符和空格)

我知道当我将代码更改为one liner时:

<textarea cols="50" rows="5"  id="k99_brsa_settings[brsa_keep_settings_exp]" name="k99_brsa_settings[brsa_keep_settings_exp]" /><?php echo $export; ?></textarea>

(来自下方代码编辑器的图片)

...没有问题,也没有制表符/空格。

有什么方法可以保持标签的可读性并消除那些输出标签和空格? &lt;textarea&gt; TAGS 是否总是必须在没有空格的输出之后结束

【问题讨论】:

    标签: php html textarea form-fields


    【解决方案1】:

    您仍然可以将其保留在多行

    <textarea ...><?php
    
    ?></textarea>
    

    或者你可以这样做:

    <?php
        echo "<textarea line1>"
            . $export
            . "</textarea>";
    ?>
    

    【讨论】:

    • 扩展 PHP 标记是一个不错的解决方案,尽管它确实会损害可读性 - 谢谢。这对我来说很奇怪,因为我在其他标签上从来没有遇到过这样的问题..
    • 大多数 html 与空白空间无关,即使文本在没有额外工作或 &lt;pre&gt;&lt;/pre&gt; 标记的情况下也不会保留超过一个空格,但 textareas 中可能有标签,有些东西我已经处理了所有但需要对选项卡的支持,所以浏览器把所有的都放进去了。
    【解决方案2】:

    我猜你可以尝试将多余的空格修剪成一个空格。或者更改您的标记以删除标签。

    <?php
        // This will replace any double whitespace with a single whitespace
        $result = str_replace('  ', ' ', $result);
    ?>
    

    【讨论】:

      【解决方案3】:

      另一种方法是通过将&lt;?php echo $export; ?&gt; 替换为&lt;?= $export ?&gt; 来稍微缩短您的php。将所有内容放在一条线上可能会让您感觉更好。

      我知道人们不建议使用短标签,但根据http://php.net/manual/en/language.basic-syntax.phpmode.php,短标签语法将始终被 php 5.4 及更高版本识别。

      【讨论】:

        猜你喜欢
        • 2018-12-27
        • 1970-01-01
        • 2010-12-04
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-04-01
        • 2011-04-17
        • 2021-12-14
        相关资源
        最近更新 更多