PHP 神奇的分号

今天在开发过程中,遇到两种分号的神奇问题,特此记录。

<?php
echo '我是正常的分号';
echo '我是神奇的分号';
?>

用肉眼无法分辨两种分号的区别,如果你使用 win 平台,上面两条语句都可以运行。但是如果你是 unix 或是 linux 则是语法错误。

根本原因是这是两种分号,他们的字符编码不同,win 同时支持这两种分号,而 unix 或是 linux 只支持其中一种。

这个现象和字母的大小写很类似,win 不区分大小写,而 unix 或是 linux 区分大小写。

使用下面这段代码就可以证明我们的猜想

<?php
if (';' == ';'){
  echo '相等';
} else {
  echo '不相等';
}
?>

上一篇
Git 彻底删除文件 Git 彻底删除文件
一般 git 删除文件使用 git rm 就可以了,但是有时候某些文件你甚至不想让它出现在 git 的 log中。 github 有一篇文章详细说明了如何操作,经过尝试是可以成功将文件彻底删除,在 log 中都找不到。 比如删除根目录下的
2013-08-13
下一篇
斯坦福-iPad 和 iPhone 应用开发(iOS5) 斯坦福-iPad 和 iPhone 应用开发(iOS5)
师介绍 讲师: Paul Hegarty 介绍: 斯坦福大学软件工程学教授,主要教授iOS应用的开发、编程。 课程介绍 最新更新课程,适用于 iOS 5。 本课程介绍了使用 iPhone SDK (软件开发包)建造 iPhone 平台上的应
2013-01-21