누구나 다차원 배열에 대한 나를 도울 수 있습니까? 좋아, 내가 그 안에 임의 배열에 원하는 배열을, 그래서 때문에 그 계층 구조 또는 인덱스 값은 배열의 원래의 배열 변경과 다를 수 있습니다 : 이것은 원래의 배열입니다임의의 PHP 다차원 배열 및 원래의 배열 인덱스를 얻을
Array(
[0]=>Array(
[title] => 'Title 1'
[description] => 'description here'
)
[1]=>Array(
[title] => 'Title 2'
[description] => 'another description here'
)
[2]=>Array(
[title] => 'Title Here Again'
[description] => 'description here again'
)
)
즉 위의 배열의 원래 구조, 그리고 당신이 무작위 그 경우,이 이것은 랜덤 에드 배열입니다
결과가 될 것이라고 드릴 것입니다
Array(
[0]=>Array(
[title] => 'Title 2'
[description] => 'another description here'
)
[1]=>Array(
[title] => 'Title 3'
[description] => 'another description again'
)
[2]=>Array(
[title] => 'Title 1'
[description] => 'description here'
)
)
당신이 볼 수 있듯이, 배열 내부의 값은 다른 위치에서 무작위 화되고 있습니다. 문제는 무작위 배열에서 이처럼 원래의 배열 인덱스를 얻는 방법에 대한 정확한 논리를 얻을 수 없다는 것입니다 -> ([0]). 'Title 1'값과 마찬가지로 원래 인덱스는 [0]이며 임의로 편집 된 후 [2]가되었지만 [Title 1]이 [0] 인덱스에 할당되기를 원했습니다. 여기에 내가 배열을 무작위 방법에 대한 짧은 PHP 코드는 다음과 같습니다
foreach (shuffleThis($rss->getItems()) as $item) {
foreach($item as $key=>$value){
if($key=='title'){
$title=$value;
}
if($key=='description'){
$description=$value;
}
}
}
function shuffleThis($list) {
if (!is_array($list)) return $list;
$keys = array_keys($list);
shuffle($keys);
$random = array();
foreach ($keys as $key) {
$random[] = $list[$key];
}
return $random;
}
그냥 그들에게 임의 에드되는
key
의 원래 배열 인덱스를 얻고 싶었다.
감사합니다.
와우! 이것은 훌륭한 대답입니다, 내가 그것을 시도했을 때, 나는 요소가 위치 키가 아니라 배열 키로 변하는 것을 볼 수 있습니다. 하지만 어떻게 키 인덱스 번호를 얻을 수 있을까요? [0], 제로 내부? –
당신이 무엇을 요구하고 있는지 확실하지 않습니다. 어떤 열쇠를 얻고, 어떤 정보를 얻었습니까? – Jon