Simplexml_load_file dan Veri alınıyor

1 Cevap

Simplexml_load_file () fonksiyonu ile çalışma, ben bir yan etkisi olsun. Ne demek istediğimi anlamak için, bu kodu bakın:

$result = simplexml_load_file($xml_link);

$arr = array();
foreach ($result->element as $elem) {
    $arr[] = $elem->number[0];
}

print_r($arr);

Çıktı:

Array
(
[0] => SimpleXMLElement Object
    (
        [0] => 330411879136
    )

[1] => SimpleXMLElement Object
    (
        [0] => 370346266228
    )

[2] => SimpleXMLElement Object
    (
        [0] => 370346266223
    )
)

Nasıl diziye veri depolamak böylece çıkış böylece gibi görünecektir:

 Array
 (
 [0] => 330411879136

 [1] => 370346266228

 [2] => 370346266223
 )

1 Cevap

Eğer sizi ilgilendiren PHP veri türü SimpleXML almak verileri dönüştürmek zorunda.

Örneğin, burada, böyle bir şey kullanmak gerekir:

$result = simplexml_load_file($xml_link);
$arr = array();
foreach ($result->element as $elem) {
    $arr[] = intval($elem->number[0]);
}

yani burada, biz tamsayılar dönüşüm "zorlamak".


In the case of integers, this can also be done using a type-cast :

$result = simplexml_load_file($xml_link);
$arr = array();
foreach ($result->element as $elem) {
    $arr[] = (int)$elem->number[0];
}

Aynı durum diğer birçok türleri için, btw - kılavuzda, Type Casting bölümüne bakın.


For instance, you could use something like this for strings :

$arr[] = (string)$elem->number[0];

Veya yüzen için böyle:

$arr[] = (float)$elem->number[0];