간단한 캐시 스크립트를 작성하려고합니다. 작동하지만 데이터가 내 JSON에 캐시 된 경우 정보를 포함하고 싶습니다. 배열에 어떤 문제가 있습니까?
나는 노력이 : 파일 의 데이터가 유효한 JSON입니다$cached = file_get_contents("./cache/" . escapeFileName($request));
$update = json_decode(json_encode($cached), true);
$update['server']['cached'] = true;
return json_encode($update);
. 정보 노드 cached
을 포함하는 server
노드를 추가하기 만하면됩니다. 스크립트는 경고 및 치명적인 오류 발사 :
PHP Warning: Illegal string offset 'server'
및
PHP Fatal error: Cannot use string offset as an array
왜 같은 시간을 인코딩하고 디코딩합니까? 'print_r ($ update);을 시도하고 당신이 가지고있는 것을 보아라! –
파일의 출력이 문자열이기 때문에 먼저 인 코드 한 다음 배열로 가져와 디코드하여 json으로 다시 인코딩하십시오. – Kimmax
어디서 가리키는 지 이해합니다 : D 내 실패 :) – Kimmax