PHP子串函数导致不同的数据

时间:2013-12-19 05:00:35

标签: php substring

我在PHP上的substr()函数上得到了意想不到的结果。字符1到6没问题,但7和8不是。

$naiyou = '10000010';

$char8 = substr($naiyou  -1, 1);
$char7 = substr($naiyou  -2, 1);    
$char6 = substr($naiyou, -3, 1);    
$char5 = substr($naiyou, -4, 1);    
$char4 = substr($naiyou, -5, 1);    
$char3 = substr($naiyou, -6, 1);
$char2 = substr($naiyou, -7, 1);
$char1 = substr($naiyou, -8, 1);

产生字符8:00000009,字符7产生:00000008。

1 个答案:

答案 0 :(得分:5)

您在$char8$char7中遗漏了逗号(,)。所以它是减法和substr()函数得到两个参数而不是你想要的三个参数。正确的陈述将是:

$char8 = substr($naiyou, -1, 1);
$char7 = substr($naiyou, -2, 1);