2014-12-22 3 views
1

페이지의 다른 섹션에서 특정 값을 참조하도록 연관 배열을 설정하는 방법은 무엇입니까? 내 기능 :어로 그를 사용하는 함수에서 Assoc 배열 설정

<?php 
function park_data($park_page_id) { 
    $data = array(); 
    if($park_page_id){ 
     $data = mysql_fetch_assoc(mysql_query("SELECT * FROM `park_profile` WHERE `park_id` = $park_page_id")); 
     return $data; 
    } 
} 
?> 

print_r :

Array ([park_id] => 1 [park_name] => Kenai Fjords [park_address] => 1212 4th Avenue [park_city] => Seward [park_state] => Alaska [park_zip] => 99664) 

가 어떻게이 배열에서 바로 [park_name] 값을 출력합니다 :

<?php 
print_r (park_data(1)); 
?> 

는 다음 연관 배열을 생성합니다?

답변

2

From the docs : print_r()가 배열 디스플레이에 호출하기 때문에

As of PHP 5.4 it is possible to array dereference the result of a function or method call directly. Before it was only possible using a temporary variable.

출력 사용자 정의 형식의 일반 텍스트 및 출력 단 하나의 배열의 키 값이 경우에
// on PHP 5.4 
print_r(park_data(1)['park_name']); 

// earlier versions 
$tmp = park_data(1); 
print_r($tmp['park_name']); 
0
$park=park_data(1); 
echo $park['park_name']; 
+0

Oups가 너무 늦었습니다. – fpierrat

0

는, echo 사용 전체 배열의 구조와 내용은 원하는 것이 아닙니다.

<?php 
    // code 
    $park_data=park_data(1); 
    echo $park_data["park_name"]; 
    // code 
?> 
+0

'구문 분석 오류 : 예상치 못한 구문 오류 '[', expecting ','or ';' ' – sjagr

+0

감사합니다. 너무 빨리 대답했습니다. 고정 – kos

+0

'구문 분석 오류 : 예기치 않은 구문 오류 '=''이 문제를 해결 한 후에도 여전히 동일하게 적용됩니다. – sjagr