【发布时间】:2019-08-08 20:36:03
【问题描述】:
这是一个奇怪的问题,而且我以前从未遇到过。
我正在从 PHPStorm 部署到 vvv(Varying Vagrant Vagrants)框,该项目是一个 wordpress 站点。
通常,当文件被移动时,在重新加载站点后,我会收到一个 PHP 解析错误,总是在文件的最后一行。该文件不一定是我打开和编辑的文件,并在末尾添加?> 可以修复它。然后我可以立即删除文件末尾的?>,一切都很好。
这种情况会间歇性发生,因此很难隔离和修复。
解析错误示例如下:
Parse error: syntax error, unexpected '' (T_ENCAPSED_AND_WHITESPACE), expecting end of file in /srv/www/cpr/public_html/wp-content/plugins/jetpack/3rd-party/class.jetpack-amp-support.php on line 359
具体的解析错误变化;它并不总是相同的东西,但它总是通过简单地添加?>、刷新等来解决。
我一直认为这与行尾或编码有关,但 似乎 都可以。 (PHPStorm 使用LF 和UTF-8。
这个工作流程中唯一对我来说是新的部分是 vvv 框,因为我以前使用过其他供应商的 vagrant 框,但我不确定这是如何导致的。
当 PHP 解析这些文件时,是否附加了一些内容会破坏这些文件? git 或 vagrant 或 PHPStorm 的部署是否会覆盖行结束规则并更改它们? 我完全不知所措。
非常感谢任何帮助。当我推出更大的插件更改时,我无法使用 WP api,或者在不手动打开所有受影响的文件并添加 PHP 结束标记,然后删除它们的情况下执行任何其他操作。
【问题讨论】:
标签: php wordpress character-encoding vagrant line-endings