xml - SimpleXML на PHP


1

В общем, есть код:

$xmlDoc = simplexml_load_file($xmlPath . result.xml);

foreach($xmlDoc->attributes() as $a => $b)
    echo $a .  =  . $b . <br />;

    if ($a == clientOrderId){
        $orderId = $b;
    }
    if ($a == status){
        $status = $b;
    }
    if ($a == error){
        $error = $b;
    }
    if ($a == techMessage){
        $techMessage = $b;
        $_SESSION[techMessage] = $techMessage;
    }
}

$_SESSION[status] = $status;
$_SESSION[error] = $error;
$_SESSION[error_text] = $res[error_text];

echo <pre>;
echo print_r($_SESSION);
echo </pre>;

но при выводе получаю:

clientOrderId = 1493813331128
status = 3
error = 44
processedDT = 2017-05-03T15:08:52.832+03:00
Array
(
    [__flash] => Array
        (
        )

    [__id] => 128
    [storeCard] => success
    [status] => SimpleXMLElement Object
    (
        [0] => 3
    )

    [error] => SimpleXMLElement Object
    (
         [0] => 44
    )

    [error_text] => 
)

В общем, мне нужно только значение, а берется целый объект почему-то.

Источник
  •  24
  •  1
  • 3 янв 2017 2017-01-03 12:40:52

1 ответ

1

Чтобы брать чисто значение нужно привести объект к строке:

$status = (string) $b;
@Moonwolf45 А голосовать "за" и принимать как правильный ответ кто будет? — 3 янв 20172017-01-03 17:32:54.000000
ништяк работает спасибо. — 3 янв 20172017-01-03 11:26:01.000000