如何避免php数组中以前的值被后面的值覆盖?
在下面的如何避免php数组中以前的值被后面的值覆盖?,php,arrays,Php,Arrays,在下面的PHP代码中,如何避免34被124覆盖?我只想保留34和124两者 $arr = array(12, 34, "df"=>43, "1"=>124, 65); $num = count($arr); reset($arr); for ($i = 1; $i <= $num; ++$i) { echo 'The Current Position:' . key($arr); echo '<br />'; echo 'The Curren
PHP
代码中,如何避免34被124
覆盖?我只想保留34
和124
两者
$arr = array(12, 34, "df"=>43, "1"=>124, 65);
$num = count($arr);
reset($arr);
for ($i = 1; $i <= $num; ++$i) {
echo 'The Current Position:' . key($arr);
echo '<br />';
echo 'The Current Value:'. current($arr);
next($arr);
echo '<br />';
echo '<br />';
}
$arr=array(12,34,“df”=>43,“1”=>124,65);
$num=计数($arr);
重置($arr);
对于($i=1;$i)
您的数组索引无效
您需要设计一个具有唯一键的数组,让PHP
进行索引。您可以将索引“1”更改为唯一键的“1”
如果打印数组,则必须看到如下结果
Array
(
[0] => 12
[1] => 124
[df] => 43
[2] => 65
)
所以不要使用重复的密钥创建数组,否则可能会丢失数据
$arr = array(12, 34, "df" => 43, "one" => 124, 65);
foreach($arr as $key => $val){
echo $key." - ".$val."<br/>";
}
PHP将始终将所有数字键视为整数,即使它们位于字符串变量或引号内
以下几点可以很明显地说明这一点:
<?php
$arr = [1 => 'hi', '2' => 'bye', 'a1' => 'hiha'];
var_export($arr);
让PHP做索引就行了。你可以从数组中删除键。@Rizier123如果我想保留“1”作为124的键,如何处理它?在定义本身中,你不能对它做任何事情。你必须检查键是否已经存在,然后再覆盖它,
<?php
$arr = [1 => 'hi', '2' => 'bye', 'a1' => 'hiha'];
var_export($arr);