2014-12-18 5 views
-1

PDF-View-Counter를 만들고 있습니다.SimpleXML의 정수가 증가합니다. XPath 변수가 작동하지 않습니다.

이제 XML에서 "보기"값을 변경해야합니다. 변수 ($VAR++)의 합계를 계산할 때 작동하지 않습니다. 어떻게해야합니까?

<?php 

$datei = "pdf.pdf"; 

$xmldb = "db.xml"; 

$id = md5($datei); 

$xml = simplexml_load_file($xmldb); 

$views = $xml->xpath('/data/count[@id="'.$id.'"]/views'); 

$num = $views[0][0]; 

$num++; 

echo $num; // it doesn't work 

XML-코드 :

<?xml version="1.0" encoding="UTF-8"?> 
<data> 
    <count id="883c7046854e04138c55680ffde90a61"> 
     <filename>s</filename> 
     <views>1</views> 
     <lastview>f</lastview> 
    </count> 
</data> 
+0

혼자만 묻는 좋은 방법은 아닙니다. 예상 한 것과 (아마도 이유가 무엇인지) 말하고 그 대신에 어떤 일이 발생하는지 알려주십시오. 그렇다면 "작동하지 않는다"는 말의 의미는 분명합니다. 그렇지 않으면 명확하지 않다. 질문을 읽는 누군가가 올바르게 추측 할 필요가있다. – hakre

답변

2

난 당신이 정수로 결과 객체를 캐스팅해야한다 같아요.

필자가 아는 한 SimpleXML->xpath()은 항상 0 이상의 배열을 반환합니다. SimpleXMLElement Objects.

+0

와우! 고마워요, 작동합니다! – DevTec

+1

대안 : 정수 값을 새로운 요소 텍스트로 할당하십시오 :'$ num = $ views [0] [0]; $ num [0] = 1 + $ num;'. 중요한 부분은 '++'(증가 연산자)가 ** SimpleXMLElement **와 같이'__toString() '을 가진 객체를 다루지 않는다는 것입니다. – hakre

관련 문제