数组索引工作不正常


array indexing not working properly

嘿,伙计们,我试图将一个数组的键添加到另一个数组中,但我没有得到预期的输出。。我的代码是

<?php
$some = array('anna'=>'2','revathy'=>'baba');
$honey = array_keys($some);

$something = array();

foreach($honey as $value) {
$something[$value]=$some[$value];

echo $something[$value];
 }
?>

当我运行此代码时,它显示的是空白屏幕,而不是输出。。希望你们能帮我。。任何帮助都会被感激的。。

这是因为array_keys返回如下内容:

array (size=2)
  0 => string 'anna' (length=4)
  1 => string 'revathy' (length=7)

所以,你需要做的是让你的脚本工作是这样的:

p.s.在您的脚本中,您有一个未定义的变量$v

<?php
$some = array('anna'=>'2','revathy'=>'baba');
$honey = array_keys($some);
$something = array();
foreach($honey as $key => $value) // this is the change
{
    $something[$value] = $some[$value];
    echo $something[$value] ."<br>"; // and here
}

输出:

2
baba
foreach ($honey as $key => $value) {
    $something[$key]=$value;
}

这是dong This的正确方式:(绝对不需要$honey=array_keys($some(;

使用php复制数组不需要这样做。除非使用引用运算符(= &$some(,否则等号运算符会复制它。

你唯一要做的就是:

<?php
$some = array('anna'=>'2','revathy'=>'baba');
$something = $some;
?>

并额外打印:

echo implode(', ', array_values($something));

将$v更改为$value,这对我来说是有效的

您可以跳过

$honey = array_keys($some);

只做

foreach($some as $key => $value)
{
    $something[$key] = $value;
}