T_INLINE_HTML?这有什么问题吗?

发布于 2024-10-16 17:39:26 字数 2049 浏览 3 评论 0原文

<? switch($data['type']) : ?>
<? case 'log': ?>

    <? while ($row = $data['loop']->fetch()) : ?>
        <table class="t-errors">
            <tr>
                <td>
                    <b>IP:</b> <? echo $row['LogShellIP']; ?>
                    <b>Command:</b> <? echo $row['LogShellCommand']; ?>
                    <b>Executed:</b> <? echo $row['LogShellReturn']; ?>
                    <b>Time:</b> <? echo format::time($row['LogShellTime']); ?>
                </td>
            </tr>
        </table>
    <? endwhile; ?>

<? break; ?>

<? case 'fatal': ?>
<? case 'warning': ?>
<? case 'notice': ?>
<? case 'unknown': ?>

    <? while ($row = $data['loop']->fetch()) : ?>
        <table class="t-errors">
            <tr>
                <td <? if ($row['LogErrorSeen'] == 0) { echo 'class="e-selected"'; } ?>>
                    <b>String:</b> <? echo $row['LogErrorString']; ?>
                    <b>File:</b> <? echo $row['LogErrorFile']; ?>
                    <b>Line:</b> <? echo $row['LogErrorLine']; ?>
                    <b>Context:</b> <? echo $row['LogErrorContext']; ?>
                    <b>Ip:</b> <? echo $row['LogErrorIP']; ?>
                    <b>Time:</b> <? echo format::time($row['LogErrorTime']); ?>
                </td>
            </tr>
        </table>
    <? endwhile; ?>

<? break; ?>
<? endswitch; ?>                    

我收到此错误:

解析错误:语法错误,意外 T_INLINE_HTML,等待 T_ENDSWITCH 或 T_CASE 或 T_DEFAULT 中 /Applications/XAMPP/xamppfiles/htdocs/Smooth Framework/tpl/terminal.tpl.php 上线 33

其中 33 行是该脚本的第 2 行。这被插入到模板上下文中。这有什么问题吗?他正在等待 T_CASE,而这就是现实!

<? switch($data['type']) : ?>
<? case 'log': ?>

    <? while ($row = $data['loop']->fetch()) : ?>
        <table class="t-errors">
            <tr>
                <td>
                    <b>IP:</b> <? echo $row['LogShellIP']; ?>
                    <b>Command:</b> <? echo $row['LogShellCommand']; ?>
                    <b>Executed:</b> <? echo $row['LogShellReturn']; ?>
                    <b>Time:</b> <? echo format::time($row['LogShellTime']); ?>
                </td>
            </tr>
        </table>
    <? endwhile; ?>

<? break; ?>

<? case 'fatal': ?>
<? case 'warning': ?>
<? case 'notice': ?>
<? case 'unknown': ?>

    <? while ($row = $data['loop']->fetch()) : ?>
        <table class="t-errors">
            <tr>
                <td <? if ($row['LogErrorSeen'] == 0) { echo 'class="e-selected"'; } ?>>
                    <b>String:</b> <? echo $row['LogErrorString']; ?>
                    <b>File:</b> <? echo $row['LogErrorFile']; ?>
                    <b>Line:</b> <? echo $row['LogErrorLine']; ?>
                    <b>Context:</b> <? echo $row['LogErrorContext']; ?>
                    <b>Ip:</b> <? echo $row['LogErrorIP']; ?>
                    <b>Time:</b> <? echo format::time($row['LogErrorTime']); ?>
                </td>
            </tr>
        </table>
    <? endwhile; ?>

<? break; ?>
<? endswitch; ?>                    

I'm getting this error:

Parse error: syntax error, unexpected
T_INLINE_HTML, expecting T_ENDSWITCH
or T_CASE or T_DEFAULT in
/Applications/XAMPP/xamppfiles/htdocs/Smooth
Framework/tpl/terminal.tpl.php on line
33

Where line 33 is the line 2 of this script. This is inserted in a template context. What's wrong with this? He is expecting a T_CASE and that's what is there!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

遗弃M 2024-10-23 17:39:26

合并第 1 行和第 2 行,

  <? switch($data['type']):
     case 'log': ?>

请参阅此链接中的注释(jeremia 在 gmx dot 于 2008 年 1 月 28 日 02:52)

merge line 1 and 2

  <? switch($data['type']):
     case 'log': ?>

see the comment in this link (jeremia at gmx dot at 28-Jan-2008 02:52)

黑凤梨 2024-10-23 17:39:26

解析器需要 T_CASE 标记,但在 switch($data['type']) : ?> 之后找到换行符。

switch (1) : ?> <? case 1: break; endswitch;

给出解析错误,而

switch (1) : ?>\n<? case 1: break; endswitch;

不会

switch (1) : ?><? case 1: break; endswitch; 

给出解析错误。 ;-)

The parser expects a T_CASE token but finds the newline after switch($data['type']) : ?>.

switch (1) : ?> <? case 1: break; endswitch;

gives a parse error and so does

switch (1) : ?>\n<? case 1: break; endswitch;

while

switch (1) : ?><? case 1: break; endswitch; 

does not. ;-)

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文