**Update**
Fixed : http://codepad.org/6pB0WUm5
by http://stackoverflow.com/users/476/deceze
我有两个代码,基本相同,但为什么,我有不同的输出?
function domain_value($domain)
{
$split_domain = str_split($domain);
$ord_count = NULL;
foreach($split_domain as $key=>$value)
{
$ord_count += ord($value);
}
return $ord_count;
}
echo domain_value('abc');
和
echo ord('a')+ord('b')+ord('c');
输出
first output : 294
second output: 98
答案 0 :(得分:3)
使用时会发生什么:
echo ord('a')+ord('b')+ord('c');
这可能是你在第二个的意图: - )
换句话说,您似乎已离开表达式最后部分的ord
。
事实上,你通常会得到98
的唯一方法是:
echo ('a')+ord('b')+('c')
(仅在第二个学期使用ord
),因此您可能需要再次检查。如果你现在似乎指出,你在每个学期都使用ord
,那对我来说就可以了。
他们都从294
返回97 + 98 + 99
,a
,b
和c
的ASCII值。