在php中以0开始数字文字
我创建这段代码是为了使用php初始化和输出关联数组的元素在php中以0开始数字文字,php,arrays,Php,Arrays,我创建这段代码是为了使用php初始化和输出关联数组的元素 $a=array("first"=>999,"two"=>099); foreach ($a as $key => $value) { echo $a[$key]."<br />"; } $a=array(“第一个”=>999,“两个”=>099); foreach($a作为$key=>$value){ 回显$a[$key]。“”; } 带有键的元素首先输出999,而其他元素输出0。 问题是为什么
$a=array("first"=>999,"two"=>099);
foreach ($a as $key => $value) {
echo $a[$key]."<br />";
}
$a=array(“第一个”=>999,“两个”=>099);
foreach($a作为$key=>$value){
回显$a[$key]。“
”;
}
带有键的元素首先输出999,而其他元素输出0。
问题是为什么999不能正确存储为字符串输出,而099不能。。有人解释这个吗?谢谢 在数组中以字符串的形式标记编号
$a=array("first" => "999", "two" => "099");
foreach($a as $key => $value) {
echo $value."<br />";
}
$a=array(“第一个”=>“999”,“两个”=>“099”);
foreach($a作为$key=>$value){
回显$value.“
”;
}
以0开始数字文字表示。在(基数8)中,没有9
。数字99
在八进制中不存在。在PHP中,数字没有前缀0
s。看来。如果您总是希望此数组有三个数值(如果只有1或2个字符长,则要添加前导0),则需要使用字符串或正确的数字()。您可以这样做:echo str_pad($a[$key],3,0,str_pad_LEFT)。“
”
将在数字的前面添加零,直到字符串长度为3。此外,如果不想这样做,则不需要执行$a[$key]
。你可以只做echo$value代码>,因为for循环为您提供每个数组键值对的$key
和$value
。这与数组无关: