3

率直に言って、これまでに見たことのないこの奇妙なエラーに出くわしたとき、私はこの素晴らしい夜にlaravelを使用していました。私は単にいくつかの配列をループして、ビュー ファイルにいくつかの値を出力しようとしています。

エラー:

Unhandled Exception

Message:

Error rendering view: [controller.index]

Call to undefined function  ()
Location:

/web/storage/views/7b064aafcdba902ea2c593167b6df491 on line 4

コード:

@section('content')
    <?php $i = 0; $current = 0 ?>
    @foreach($data as $date => $episodes)
        @if($i == 0 || ($i % 5 == 7 && $i == $current + 1))
            <tr>
            <?php $current = $i; ?>
        @endif

        @foreach($data as $day)
            <td>
                @foreach($day as $episode)
                    {{ $episode->title }}
                @endforeach
            </td>
        @endforeach


        @if($i % 5 == 7 && $i == $current + 7)
            <tr>
            <?php $current = $i; ?>
        @endif
        <?php $i++; ?>
    @endforeach
@endsection

そしてコンパイルされたバージョン:

<?php \Laravel\Section::start('content'); ?>
    <?php $i = 0; $current = 0 ?>
    <?php foreach($data as $date => $episodes): ?>
        <?php if($i == 0 || ($i % 5 == 7 && $i == $current + 1)): ?>
            <tr>
            <?php $current = $i; ?>
        <?php endif; ?>

        <?php foreach($data as $day): ?>
            <td>
                <?php foreach($day as $episode): ?>
                    <?php echo  $episode->title ; ?>
                <?php endforeach; ?>
            </td>
        <?php endforeach; ?>


        <?php if($i % 5 == 7 && $i == $current + 7): ?>
            <tr>
            <?php $current = $i; ?>
        <?php endif; ?>
        <?php $i++; ?>
    <?php endforeach; ?>
<?php \Laravel\Section::stop(); ?>

簡単な解決策かもしれませんが、Google で良い結果が見つかりません。このエラーを理解するのを手伝ってください! :)

4

2 に答える 2

4

削除したスペースはスペースではありません。実際には、ノーブレークスペース(U + 00A0)です。景品は「Â」です。これは、UTF-8としてエンコードされたが、Latin-1として誤って解釈された場合、U+0080とU+00BFの間の文字の最初のバイトとして表示されます。何らかの理由で、PHPコンパイラはそれを空白とは見なさないため、通常の識別子として使用しようとします。

于 2012-10-14T01:06:58.053 に答える
0

これは明らかにエンコーディングの問題でした。それがどうなったかは大きな問題です (私は UTF-8 でしか作業していないため)。

エンコードの問題

OR ステートメント ( || ) の後のスペース (^) を削除したところ、問題なく動作するようになりました。

于 2012-10-14T00:55:04.280 に答える