PHP: foreachta garip hareket Dizi

0 Cevap php

Ben bir SOAP istemci üzerinden sorgu verileri bir sınıf var. Sorgu sonuçları nesneleri bir dizi olarak döndürülür. Garip bir şey oluyor. Dizideki bir öğe olduğunda sadece oluşursa ben emin değilim.

İşte kod:

function getNotes($ticketid){

    $ticketid = $this->ms_escape_string($ticketid);

    $conn = new Connections();
    $client = $conn->connectToAPI();

    $xml = array('sXML' =>"<queryxml>".
                                "<entity>TimeEntry</entity>".
                                "<query>".
                                    "<field>TicketID".
                                        "<expression op='equals'>$ticketid</expression>".
                                    "</field>".
                                "</query>".
                        "</queryxml>");

    $result = $client->query($xml);

    $noteso = $result->queryResult->EntityResults->Entity;

    //set array counter
    $x=0;


    var_dump($noteso);

        foreach($noteso as $note){

            var_dump($note->ResourceID);

            $name = $this->getResourceName($note->ResourceID);


            $timeentryarray[$x] = array('createdate'     => $note->CreateDateTime,
                            'summarynotes'  => $note->SummaryNotes,
                            'resource'    => $name
                           );
            $x++;

        }

        return $timeentryarray;
}

Uygulama var_dump (noteso $) çalıştırdığınızda gayet iyi. Yazdırılır

object(stdClass)#12 (15) {
    ["id"]=> int(36988)
    ["UserDefinedFields"]=> object(stdClass)#13 (0) { } 
    ["TicketID"]=> int(26390) 
    ["InternalAllocationCodeID"]=> int(28303142) 
    ["Date"]=> string(19) "2010-10-25T00:00:00" 
    ["StartDateTime"]=> string(19) "2010-10-25T04:59:00" 
    ["EndDateTime"]=> string(19) "2010-10-25T05:04:00" 
    ["HoursWorked"]=> float(0.08)
    ["HoursToBill"]=> float(0.0833333358) 
    ["OffsetHours"]=> float(0)
    ["SummaryNotes"]=> string(69) "Hi Sarah, Do you have an example of a bounced email? Regards Simon" 
    ["InternalNotes"]=> string(0) "" 
    ["RoleID"]=> int(24482927) 
    ["CreateDateTime"]=> string(23) "2010-10-25T05:06:28.023" 
    ["ResourceID"]=> int(29699970) 
} 

ama foreach döngü içinde ikinci var_dump ($ not> ResourceID) sadece gösterir

NULL

Ondan sonra da dizi erişen her satırı bir hata atar:

Notice: Trying to get property of non-object in C:\Program Files (x86)\Apache Software Foundation\Apache2.2\htdocs\ClientPortal\classes\OpenTickets.php on line 204

Hat 204 olmak

$name = $this->getResourceName($note->ResourceID);

Bir süre için bu bir hata ayıklamak için çalışıyor, birileri herhangi bir öneri sunabilir?

Selamlar,

Jonesy

0 Cevap