전에 1000 번이나했는데 어떤 이유로 인덱스/키를 사용하여 배열 항목에 액세스 할 수 없습니다. 다른 일을하는 유일한 방법은 파일에서 json을 읽은 다음 json_decode를 사용하여이 특정 객체 배열을 채우는 것입니다. foreach 루프를 사용하면 $ post와 $ key를 얻을 수 있지만 키를 사용하여 $ posts [$ key]를 사용하여 원래 배열의 동일한 값에 액세스하면 아무 것도 반환하지 않습니다. 특정 항목을 설정 해제하고 참조를 통해 전달하면 도움이되지 않습니다. 아래는 코드입니다PHP에서 인덱스/키를 사용하여 배열 항목에 액세스 할 수 없습니다.
$posts = json_decode($contents, true);
에
$contents = fread($fh, filesize($filepath));
fclose($fh);
$posts = (array)json_decode($contents);
foreach($posts as $key => &$post){
$post_time = strtotime($post->post_date);
$now = strtotime('now');
if(($now - $post_time) > 86400){
unset($posts[$key]);
}
}
'print_r ($ posts)'은 무엇을 반환합니까? – Ikke
'print_r ($ posts)'로 구조체를 검사하고'json_decode ($ contents, true)'를 시도하십시오. –
''보이지 않는 JSON! –