0

これが私の問題です。私のコードは次のようになります。

<ul class="nav pull-right">
<?php if (!logged_in()) : ?>
    <li><a href="<?php echo base_url(); ?>login"><i class="icon-off"></i> Login</a></li>
    <li><a href="<?php echo base_url(); ?>register"><i class="icon-user"></i> Register</a></li>
<?php else : ?>
    <li><a href="<?php echo base_url(); ?>logout"><i class="icon-user"></i> Logout</a></li>
<?php endif; ?>
</ul>

ただし、Chrome でソースを表示すると、コードがあちこちにあります。

<ul class="nav pull-right">
                                                    <li><a href="http://localhost/logout"><i class="icon-user"></i> Logout</a></li>
                                            </ul>

ソースが次のようになるように構文を再編成するにはどうすればよいですか?

<ul class="nav pull-right">
    <li><a href="http://localhost/logout"><i class="icon-user"></i> Logout</a></li>
</ul>
4

2 に答える 2

1

終了 PHP タグの後のすべてのキャリッジ リターンは、出力バッファに返されません。次のように、コードにいくつかの行を追加する必要があります。

<ul class="nav pull-right">
<?php if (!logged_in()) : echo "\n";  ?>

    <li><a href="<?php echo base_url(); ?>login"><i class="icon-off"></i> Login</a></li>
    <li><a href="<?php echo base_url(); ?>register"><i class="icon-user"></i> Register</a>      
</li>
<?php else : ?>

    <li><a href="<?php echo base_url(); ?>logout"><i class="icon-user"></i> Logout</a></li>
<?php endif; ?>
</ul>

テンプレートシステムであるTwigを見てみたいかもしれません。また、すべてのスペースを削除する機能もあり、非常に便利な場合があります。

于 2012-12-07T20:39:46.017 に答える
1

ソース コードのフォーマット (いくつかの例外を除く) は、ブラウザー、CSS、Javascript などに関係ありません。それはほとんど虚栄心であり、それについて心配することは常に頭痛の種になります.

Tidyクラスを使用することをお勧めします。例:

$output = "{YOUR FINAL OUTPUT STRING}";
$tidy = new Tidy;
$config = array(
    'indent'              => true,
    'literal-attributes'  => true,
    'wrap'                => 120
);
$tidy->parseString($output, $config, 'utf8');
$tidy->cleanRepair();
echo $tidy;
于 2012-12-07T20:43:16.917 に答える