FastCGI stderr:意外的文件结尾,但php-l通过了语法检查

FastCGI stderr:意外的文件结尾,但php-l通过了语法检查,php,Php,我检查了许多解决方案,但没有一个解决了我的问题。所以,决定打开另一个问题,这是一个非常常见的错误 我的代码: <?php /** * Created by PhpStorm. * User: max * Date: 04.05.17 * Time: 13:51 */ ?> <div class="modal-header bg-box"> <button type="button" class="close" data-dismiss

我检查了许多解决方案,但没有一个解决了我的问题。所以,决定打开另一个问题,这是一个非常常见的错误

我的代码:

<?php
/**
 * Created by PhpStorm.
 * User: max
 * Date: 04.05.17
 * Time: 13:51
 */


?>

<div class="modal-header bg-box">
        <button type="button" class="close" data-dismiss="modal" aria-hidden="false">x</button>
        <table class="modal-action-header">
            <tbody>
            <tr>
                <td class="modal-action-title">

                    <h2 class="modal-title">
                        <i class="fa pe-7s-credit"></i>
sexybox Transaction
</h2>
                </td>
                <td>

                </td>
            </tr>
            </tbody>
        </table>
    </div>
    <div class="modal-body">
        <div class="modal-content-gridview">
            <h3>sexybox Transaction</h3>
            <div class="broadcast-content">
                <div class="text-center">
                    <?php
                    if (count($model->errors)) {
                        foreach ($model->errors as $errorName => $errorMsgs) {
                            ?>
                            <section class="panel panel-featured-left panel-featured-secondary">
                                <div class="panel-body">
                                    <div class="widget-summary widget-summary-sm">
                                        <div class="widget-summary-col widget-summary-col-icon">
                                            <div class="summary-icon bg-secondary">
                                                <i class="fa"></i>
                                            </div>
                                        </div>
                                        <div class="widget-summary-col">
                                            <h4 class="title"><?= ucwords(strtolower($errorName)); ?></h4>
                                            <div class="summary">

                                                <?php
                                                foreach ($errorMsgs as $errorMsg) {
                                                    ?>
                                                    <div class="info">
                                                        <strong class="amount"><?= $errorMsg; ?></strong>
                                                    </div>
                                                    <?php
                                                }
                                                ?>
                                            </div>
                                        </div>
                                    </div>
                                </div>
                            </section>
                            <?php
                        }
                    }
                    ?>

    <section class="panel panel-featured-left panel-featured-primary">
        <div class="panel-body">
            <label class="sexybox-type">
                <ul>
                    <li><input type="radio" name="sexyboxType" id="fullsexybox" value="full"  onclick="js:$('#sexyboxValueBlock').hide();" /></li>
                    <li>
                        <div><h5>Full sexybox</h5></div>
                        <div>sexybox the full amount(<?=$model->amountNetFormatted; ?>)</div>
                    </li>
                </ul>
            </label>
            <label class="sexybox-type">
                <ul>
                    <li><input type="radio" name="sexyboxType" id="partialsexybox" value="partial" onclick="js:$('#sexyboxValueBlock').show();" /></li>
                    <li>
                        <div><h5>Partial sexybox</h5></div>
                        <div>sexybox a partial amount</div>
                    </li>
                </ul>
            </label>
            <label id="sexyboxValueBlock" style="display: none;" class="sexybox-type">
                <ul>
                    <li class="sexybox-amount-text"><h5>sexybox amount:</h5></li>
                    <li class="sexybox-amount-box"><?=$currency;?> <input type="text" name="sexyboxValue" id="sexyboxValue" /></li>
                </ul>
            </label>
        </div>
    </section>
<?=
                    Html::hiddenInput("transId", $model->id, [
                        'id' => "transId"
                    ]);
                    ?>
    </div>
    <div class="text-center">
        <div class="text-right form-buttons">
            <?=
            Html::button(
                'Cancel', [
                    'class' => 'btn btn-cancel',
//                                'style' => 'float:left;',
                    'onclick' => 'js:boxModalPopover.modal(\'hide\');'
                ]
            );
            ?>

            <?=
            Html::button(
                'sexybox', [
                    'class' => 'btn btn-info',
//                                'style' => 'float:left;',
                    'onclick' => 'js:$.ajaxsexybox();'
                ]
            );
            ?>
        </div>
    </div>
    </div>
    </div>
    </div>
    <div class="alert-defaults" style="display: none;">
    </div>
<?php

x
sexybox事务
sexybox事务

  • 全性别箱 全部金额的六个盒子()
  • 部分性盒子 六分之一
  • sexybox金额:

您遇到的是FCGI超时或崩溃,当脚本遇到问题时,它会在准确的行上切断脚本

您的web服务器错误日志可能会确认这一点,具体取决于您的设置方式


另外,在每台服务器上,您可以从命令行运行以下命令来测试语法错误:
php-l

您遇到的是FCGI超时或崩溃,当脚本遇到问题时,它会在正确的行上切断脚本

您的web服务器错误日志可能会确认这一点,具体取决于您的设置方式


另外,在每台服务器上,您可以从命令行运行以下命令来测试语法错误:
php-l

这是一个多么奇怪的问题,但下面是我刚才所做的。 将PHP5.5.9升级至最新补丁21。像以前一样从git中提取所有文件,一切正常。在我看来,如果你有PHP5.5.9-patch17和短标签,并用
谢谢你们的帮助。

这是一个多么奇怪的问题,但以下是我刚刚做的。 将PHP5.5.9升级至最新补丁21。像以前一样从git中提取所有文件,一切正常。在我看来,如果你有PHP5.5.9-patch17和短标签,并用
感谢大家的帮助。

如果文件出现问题,请尝试在文本编辑器(如vim)中打开该文件。我打赌有一些不可见的字符(
^m
)是你通常看不到的。@aynber他的问题不是一般的解析错误。他的脚本解析正确,这是一个运行时问题,apache超时并切断剩余的脚本。问题是我直接从git在两台机器上签出相同的文件,它在1台机器上工作,而不是在另一台机器上。如果是^M字符,它会在两个位置都断开。如果文件出现问题,请尝试在文本编辑器(如vim)中打开该文件。我打赌有一些不可见的字符(
^m
)是你通常看不到的。@aynber他的问题不是一般的解析错误。他的脚本解析正确,这是一个运行时问题,apache超时并切断剩余的脚本。问题是我直接从git在两台机器上签出相同的文件,它在1台机器上工作,而不是在另一台机器上。如果它是^M字符,它会在两个位置都断开吗?每次我运行页面时,它都会在同一时间命中?我觉得很难相信。为什么很难相信?它可能在每一次超时的密集呼叫的中间。这个特定的调用可能花费了99%的脚本执行时间。分散一些错误日志调用,看看它是否每次都到达同一点。@Cac3a我已经用一种方法更新了我的答案,手动检查php是否可以在所有环境中解析您的文件。php-l在中未检测到语法错误…它每次都在同一点中断。就像在我最初的问题中,当我重新保存文件时,它工作得很好,只有在我从git中签出文件后才会中断。但是当它在两台机器上都出现故障时,其中一台工作,而另一台不工作。你可能需要更新你的问题的所有环境细节(操作系统、web服务器、php、所有东西的版本)在哪里工作,在哪里不工作。我也会在命令行中断前后运行
md5sum()
,以确保其间没有任何内容在修改文件。还要简化它。让它成为最小的可能的例子。删除文件块,直到文件通过。等等。每次我运行页面时,它都会在同一时间命中?我觉得很难相信。为什么很难相信?它可能在每一次超时的密集呼叫的中间。该特定调用可能是脚本执行时间的99%