PHP에서 XML 파일의 속성 값을 가져 오는 방법은 무엇입니까?
PHPPHP에서 XML 파일의 속성 값을 가져 오는 방법은 무엇입니까?
죄송합니다. 쉬운 질문 인 것 같지만, 머리를 뽑기 시작했습니다 ...
나는이 XML 파일을 가지고있다.
<VAR VarNum="90">
<option>1</option>
</VAR>
나는 VarNum을 얻으려고하고있다.
지금까지 나는 다른 정보를 얻기 위해 follow 코드를 사용하여 성공했다.
$xml=simplexml_load_file($file);
$option=$xml->option;
난 그냥 VarNum (내가 생각하는 속성 값을 얻을 수 없다?)
감사!
해결법
-
==============================
1.SimpleXMLElement :: attributes ()를 사용하여 이것을 얻을 수 있어야합니다.
SimpleXMLElement :: attributes ()를 사용하여 이것을 얻을 수 있어야합니다.
이 시도:
$xml=simplexml_load_file($file); foreach($xml->Var[0]->attributes() as $a => $b) { echo $a,'="',$b,"\"\n"; }
그러면 첫 번째 foo 요소에 대한 모든 name / value 특성이 표시됩니다. 연관 배열이기 때문에 이렇게 할 수 있습니다.
$attr = $xml->Var[0]->attributes(); echo $attr['VarNum'];
-
==============================
2.$ xml [ 'VarNum']을 사용하는 것은 어떻습니까?
$ xml [ 'VarNum']을 사용하는 것은 어떻습니까?
이렇게 :
$str = <<<XML <VAR VarNum="90"> <option>1</option> </VAR> XML; $xml=simplexml_load_string($str); $option=$xml->option; var_dump((string)$xml['VarNum']);
(파일을 만드는 대신 XML을 문자열에 붙여 넣었 기 때문에 simplexml_load_string을 사용 했으므로 simplexml_load_file로 처리하는 것이 좋습니다.)
윌 당신을 얻을 것이다
string '90' (length=2)
simpleXML을 사용하면 배열 구문으로 속성에 액세스 할 수 있습니다. 그리고 SimpleXMLElement가 아닌 값을 얻기 위해 문자열로 변환해야합니다.
예를 들어 매뉴얼의 기본 사용 예 # 5를 참조하십시오.
-
==============================
3.
[0] => Array ( [@attributes] => Array ( [uri] => https://abcd.com:1234/abc/cst/2/ [id] => 2 ) [name] => Array ( [first] => abcd [last] => efg ) [company] => abc SOLUTION [email] => abc@xyz.com [homepage] => WWW.abcxyz.COM [phone_numbers] => Array ( [phone_number] => Array ( [0] => Array ( [main] => true [type] => work [list_order] => 1 [number] => +919876543210 ) [1] => Array ( [main] => false [type] => mobile [list_order] => 2 [number] => +919876543210 ) ) ) [photo] => Array ( [@attributes] => Array ( [uri] => https://abcd.com:1234/abc/cst/2/cust_photo/ ) ) )
나는 아래의 코드를 적용했다.
$xml = simplexml_load_string($response); $json = json_encode($xml); $array = json_decode($json,TRUE); print_r($array);
하지만 그것은 PHP에서 단일 배열에있는 모든 데이터를 원하는 전체 사용하지 않습니다
from https://stackoverflow.com/questions/1256796/how-to-get-the-value-of-an-attribute-from-xml-file-in-php by cc-by-sa and MIT license
'PHP' 카테고리의 다른 글
preg_replace에서 html 태그를 무시하십시오. (0) | 2018.09.20 |
---|---|
PHP 메일 : HTML을 보내는 방법? (0) | 2018.09.20 |
다차원 배열 값에 액세스하기 (0) | 2018.09.20 |
pdo - 멤버 함수 호출 prepare () 비 - 객체 [duplicate] (0) | 2018.09.20 |
PHP는 다차원 배열 중복 제거 (0) | 2018.09.20 |