PHP_EOL表面上用于以跨平台兼容的方式查找换行符,因此它处理DOS / Unix问题。
请注意,PHP_EOL表示当前系统的结束字符。例如,在类似unix的系统上执行时,它不会找到Windows端线。
PHP_EOL当您想要一个新行时,您可以使用,并且您希望跨平台。
这可能是在您将文件写入文件系统(日志,导出,其他)时。
如果您希望生成的HTML可读,则可以使用它。所以,你可以按照你的<br />一个PHP_EOL。
如果你从cron运行php作为脚本你需要输出一些东西并将其格式化为屏幕,你会使用它。
如果要构建要发送的电子邮件,则可以使用它,这需要一些格式。
我发现PHP_EOL对于文件处理非常有用,特别是如果你要将多行内容写入文件中。
例如,您有一个长字符串,您希望在写入普通文件时分成多行。使用\\ r \\ n可能无法正常工作,所以只需将PHP_EOL放入脚本中,结果就很棒了。
看看下面这个简单的例子:
<?php
$output = \'This is line 1\' . PHP_EOL .
\'This is line 2\' . PHP_EOL .
\'This is line 3\';
$file = \"filename.txt\";
if (is_writable($file)) {
// In our example we\'re opening $file in append mode.
// The file pointer is at the bottom of the file hence
// that\'s where $output will go when we fwrite() it.
if (!$handle = fopen($file, \'a\')) {
echo \"Cannot open file ($file)\";
exit;
}
// Write $output to our opened file.
if (fwrite($handle, $output) === FALSE) {
echo \"Cannot write to file ($file)\";
exit;
}
echo \"Success, content ($output) wrote to file ($file)\";
fclose($handle);
} else {
echo \"The file $file is not writable\";
}
?>
从main/php.hPHP版本5.6.30和版本7.1.1:
#ifdef PHP_WIN32
# include \"tsrm_win32.h\"
# include \"win95nt.h\"
# ifdef PHP_EXPORTS
# define PHPAPI __declspec(dllexport)
# else
# define PHPAPI __declspec(dllimport)
# endif
# define PHP_DIR_SEPARATOR \'\\\\\'
# define PHP_EOL \"\\r\\n\"
#else
# if defined(__GNUC__) && __GNUC__ >= 4
# define PHPAPI __attribute__ ((visibility(\"default\")))
# else
# define PHPAPI
# endif
# define THREAD_LS
# define PHP_DIR_SEPARATOR \'/\'
# define PHP_EOL \"\\n\"
#endif
正如你可以看到PHP_EOL可以"\\r\\n"(在Windows服务器上)或"\\n"(在其他东西)。在5.4.0RC8 之前的 PHP版本上,可能存在第三个值PHP_EOL:( "\\r"在MacOSX服务器上)。这是错误的,并已在2012-03-01 修复,错误61193。
正如其他人已经告诉过你的那样,你可以PHP_EOL在任何类型的输出中使用(其中任何一个值都是有效的 - 比如:HTML, ,日志......),你需要统一的换行符(在我看来你应该想要这个)。
我只是想显示PHP_EOLPHP源支持的可能值,因为它还没有在这里显示
继续阅读与本文标签相同的文章
-
云服务OpenAPI的7大挑战,架构师如何应对?
2026-05-17栏目: 教程
-
什么是阿里云备案服务号及相关疑问解答 要网站备案的朋友必看!
2026-05-17栏目: 教程
-
《DNS稳定保障系列1--服务双保障“辅助DNS”产品介绍》
2026-05-17栏目: 教程
-
2019年1-8月实现利润前五省份有哪些?
2026-05-17栏目: 教程
-
云栖大会SaaS加速器专场 | 阿里云资深技术专家黄省江:让天下没有难做的SaaS
2026-05-17栏目: 教程
