我希望使用相同的键保留两个值,但重命名另一个。
我尝试array_merge()
,但它只保留最后一个值。
这是数组的样子
[0] => Array
(
[process] => A
[start] => 0
)
[1] => Array
(
[process] => A
[end] => 1
)
[2] => Array
(
[process] => A
[start] => 9
)
[3] => Array
(
[process] => A
[end] => 14
)
我只想保留密钥end
的第一个值,但保留start
的两个值。使它像:
Array
(
[process] => A
[start] => 0
[start2] => 9
[end] => 1
)
答案 0 :(得分:0)
以下是您在PHP中的表现方式。它相对简单,但是我需要手动添加许多检查才能使其按照您的意愿运行。
<?php
$array = Array(Array
(
"process" => "A",
"start" => 0
),Array
(
"process" => "A",
"end" => 1
),Array
(
"process" => "A",
"start" => 9
),Array
(
"process" => "A",
"end" => 14
));
$returnValue = Array();
$returnValue["process"] = $array[0]["process"];
$flagFirstEnd = false;
$startI = 1;
foreach ($array as $key => $value) {
if (!$flagFirstEnd && isset($value["end"])) {
$flagFirstEnd = true;
$returnValue["end"] = $value["end"];
}
if (isset($value["start"])) {
if ($startI == 1) {
$returnValue["start"] = $value["start"];
} else {
$returnValue["start" . $startI] = $value["start"];
}
$startI++;
}
}
print_r($returnValue);
?>
答案 1 :(得分:0)
Mabye函数func checkMusicStatus() {
let status = UserDefaults().string(forKey: "switch")
if status == "Off"{
if (self.globalVars.audioPlayer?.isPlaying != nil){
self.globalVars.audioPlayer?.stop()
}
} else {
self.globalVars.playMusic()
}
}
会帮助你。
它不是你期望的结果,而是得到像
这样的结果array_merge_recursive
请查看the documenation以获取更多信息。