我不知道如何解决这个问题

时间:2012-09-18 07:16:21

标签: php

当我执行以下脚本时:

<?php
$num = 3;
list($num, $dec) = explode(".", $num);
?>

PHP说:

  

注意:未定义的偏移量:第3行/home/www/test.php中的1

除了禁用这些通知外,有没有办法阻止此通知出现?

3 个答案:

答案 0 :(得分:3)

试试这个

$num = 3;

// forces to show the decimal point
$rnum = sprintf("%1\$.2f",$num);

list($num, $dec) = explode(".", $rnum);

编辑完整性:

或者您也可以使用number_format:

$rnum = number_format($num, 2); 
按照BojanDević的建议

答案 1 :(得分:0)

此通知告诉您只有一个数组值,解决此问题的一种方法是使用array_pad:

list($num, $dec) = array_pad(explode('.', $num),2,0);

Here's a working example

答案 2 :(得分:0)

虽然你的代码没有实际意义,但我会假设你已经把它作为一种产生错误的快捷方式。

如果您添加了第一行代码

ini_set('display_errors','0');

这会阻止显示错误 - 但是,您应该只在项目完成并在最后部署时执行此操作。否则您不会受到“为什么它是空页”或“为什么不这样做”的影响做..“