2016-11-08 1 views
-4

배열 요소에 액세스하려고했지만 어떤 이유로이 문제가 생깁니다.액세스 할 수없는 배열 요소가있는 것 같습니다.

그래서 나는 $lead 내에서이 배열을 가지고 :

Array 
(
    ["City"] => Other 
    [Company Name] => 
    [Company Email] => 
    [Contact Form URL] => 
    [Comments] => 
) 

그리고 나는 이런 식으로 액세스하려고 :

var_dump($lead['"City"']); 

을하지만 어떤 이유로 나는 정의되지 않은 인덱스 오류 얻을 :

Notice: Undefined index: "City"

그리고 왜 그런지 모르겠습니다.

편집 :이 코드

Array 
(
    ["City"] => Other 
    [Company Name] => 
    [Company Email] => 
    [Contact Form URL] => 
    [Comments] => 
) 

또한 : 나는 highlight_string(print_r($lead, TRUE)); 사용할 때

이 출력입니다

foreach($lead as $k => $v){ 
    var_dump($k); 
    die(); 
} 

내가 얻을 :

string(9) ""City"" 
+1

이 안에'$ leads' 또는'$의 lead'의 덤프 당신의 foreach 루프? – Rizier123

+1

질문에 충분히 답한 다음 작성자가 삭제하고 마지막으로 다시 게시했기 때문에이 질문을 주제와 다르게 끝내기로했습니다. –

+0

그건'var_dump()'출력이 아니에요 ... – AbraCadaver

답변

1

의견 덕분에 키가 시작될 때 UTF-8 BOM character (EF BB BF)을 얻은 것 같아서 액세스 할 수 없었습니다. Stack Overflow는 내가 여기에 게시 할 때 캐릭터를 벗겨 낸 것처럼 보였다. 이 코드

는 :

foreach($lead as $k => $v){ 
    var_dump($k); 
    die(); 
} 

는 키가 9 바이트로 한 것으로 나타났다.

string(9) ""City"" 
    //↑ 

는 헥스 뷰어의 도움으로 당신은 또한 EF BB BF 문자를 볼 수 있었다. 그래서 해결책은 배열 요소를 얻을 수있는 foreach 루프를 사용하거나 올바른 키를 사용하는 것입니다

foreach($lead as $k => $v){ 
    echo $v; 
    break; 
} 

또는

echo $lead[chr(0xEF) . chr(0xBB) . chr(0xBF) . '"City"']; 
+0

이 'string (9) ""City ""'가 출력이면, 여기에 복사되지 않은 숨겨진 문자가 키에 있음을 의미합니다. 16 진수 뷰어로 키를보고 3 개의 "숨겨진"문자를보아야합니다. – Rizier123

+0

'var_dump ($ k);'의 출력을 github 요지에 복사하고 여기에 링크를 게시하십시오. – Rizier123

+0

https://gist.github.com/anonymous/0bb5c40493d2f4bdf7b54a1990074c6e – user990717

관련 문제