PHP:未定义的偏移量1错误

时间:2013-06-20 19:23:31

标签: php error-handling

我试图在1000之后用k,m,b,t格式格式化数字,但我收到此消息:

  

注意:未定义的偏移量:1

我无法理解错误以及如何解决问题。

$x = round($num);
$x_number_format = number_format($x);
$x_array = explode(',', $x_number_format);
$x_parts = array('k', 'm', 'b', 't');
$x_count_parts = count($x_array) - 1;
$x_display = $x;
$x_display = $x_array[0] . ((int) $x_array[1][0] !== 0 ? '.' . $x_array[1][0] : '');
$x_display .= $x_parts[$x_count_parts - 1];
return $x_display;

爆炸后,var_dump() $x_array;结果为array(1) { [0]=> string(1) "1" }

{{1}}

1 个答案:

答案 0 :(得分:1)

在第一行之后把它放好:

if ($x < 1000) return $x;

编辑(更简单的方法;整个功能):

if     ($x < 1000)    return round($x);
elseif ($x < 1000000) return round($x/1000)   .'k';
else                  return round($x/1000000).'m';