Avatar billede starf Nybegynder
15. november 2014 - 12:01 Der er 6 kommentarer og
1 løsning

php og array

Jeg forsøger at lave et lille forsøg med at slå cvr data op via cvrapi. Bruger eksemplet på denne side: http://cvrapi.dk/examples

og får så outputtet:

Array ( [vat] => 10150817 [name] => Erhvervsstyrelsen [address] => Langelinie Allé 17 [zipcode] => 2100 [city] => København Ø [protected] => [phone] => 35291000 [email] => [fax] => [startdate] => 01/04 - 1964 [enddate] => [employees] => 200 - 499 [addressco] => [industrycode] => 841300 [industrydesc] => Administration af og bidrag til erhvervsfremme [companycode] => 230 [companydesc] => Statslig administrativ enhed [creditstartdate] => [creditstatus] => 0 [creditbankrupt] => [owners] => [productionunits] => Array ( [0] => Array ( [pno] => 1003407806 [main] => 1 [name] => Erhvervsstyrelsen [address] => Langelinie Allé 17 [zipcode] => 2100 [city] => København Ø [protected] => [phone] => 35291000 [email] => [fax] => [startdate] => 01/01 - 1993 [enddate] => [employees] => 200 - 499 [addressco] => [industrycode] => 841300 [industrydesc] => Administration af og bidrag til erhvervsfremme ) [1] => Array ( [pno] => 1017951463 [main] => [name] => Erhvervsstyrelsen, Silkeborg [address] => Vejlsøvej 29 [zipcode] => 8600 [city] => Silkeborg [protected] => [phone] => [email] => [fax] => [startdate] => 25/09 - 2012 [enddate] => [employees] => [addressco] => [industrycode] => 841300 [industrydesc] => Administration af og bidrag til erhvervsfremme ) [2] => Array ( [pno] => 1018835963 [main] => [name] => Erhvervsstyrelsen, Dampfærgevej [address] => Dampfærgevej 10 [zipcode] => 2100 [city] => København Ø [protected] => [phone] => 35291000 [email] => [fax] => [startdate] => 01/10 - 2013 [enddate] => [employees] => [addressco] => [industrycode] => 841300 [industrydesc] => Administration af og bidrag til erhvervsfremme ) ) [t] => 100 [version] => 6 ) Array ( [error] => NOT_FOUND [t] => 0 [version] => 6 )


hvordan outputter jeg vat, navn og de andre elementer der hvor jeg vil have dem? syntes ikke var_dump virker?
Avatar billede erikjacobsen Ekspert
15. november 2014 - 12:45 #1
Formentlig (utestet)

  $a = cvrapi('10150817', 'dk');

  print $a['vat'];
  print $a['name'];

// osv
Avatar billede olsensweb.dk Ekspert
15. november 2014 - 13:22 #2
her er et lille eks, hvor jeg bare udskriver addresse og postnumer og by
     
<?php
$vat = "10150817";
$country = "dk";
// Options
$options = array(
    'http' => array(
        'header' => 'User-agent: test fra eksperten.dk'
    )
);
$context = stream_context_create($options);
$result = file_get_contents('http://cvrapi.dk/api?search=' . $vat . '&country=' . $country, false, $context);
$json_decoded = json_decode($result, 1);
?>
<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title>spm 999366</title>
    </head>
    <?php
    echo "<pre>";
    print_r($json_decoded);
    echo "</pre>";
    echo "hoved addresse<br>" . $json_decoded['address'] . " " . $json_decoded['zipcode'] . " " . $json_decoded['city'] . "<br>";
    // $lng=count($json_decoded['productionunits']);
    // tæller hvor manger der er i sub arrayet productionunits
    $addresser = "";
    for ($i = 0, $lng = count($json_decoded['productionunits']); $i < $lng; $i++) {
        $addresser .= $json_decoded['productionunits'][$i]['address'] . " " . $json_decoded['productionunits'][$i]['zipcode'] . " " . $json_decoded['productionunits'][$i]['city'] . "<br>";
    }
    echo "<br>andre addresser<br>" . $addresser
    ?>
</body>
</html>
Avatar billede starf Nybegynder
15. november 2014 - 13:41 #3
tak, perfekt og let at forstå, tak for et godt eksempel :) bare smid et svar :)
Avatar billede olsensweb.dk Ekspert
15. november 2014 - 13:57 #4
hvis det kun er Silkeborg afdelingen er det selvføgelig bare
     
<?php
echo $json_decoded['productionunits'][1]['name'] . "<br>" . $json_decoded['productionunits'][1]['address'] . " " . $json_decoded['productionunits'][1]['zipcode'] . " " . $json_decoded['productionunits'][1]['city'] . "<br>";   
?>
Avatar billede starf Nybegynder
15. november 2014 - 14:53 #5
tak. en sidste ting, hvis nu der er flere ejere, hvordan får man den så til at skrive dem alle?
Avatar billede olsensweb.dk Ekspert
15. november 2014 - 15:25 #6
så antager jeg at der står noget i $json_decoded['owners'], måske komma seperaret, kunne også indeholde et array (hvilke ville være mest narturligt), men har du et CVR nummer så vi kan få vished for det

hvis det er et array under owners hvilke jeg gætter på, antager jeg der er en key der hedder name, og så kan du skrive den som
(utested)

$owners ="";
for ($i = 0, $lng = count($json_decoded['owners']); $i < $lng; $i++) {
    $owners .= "<br>" . $json_decoded['owners'][$i]['name']."<br>";
}
echo $owners;



det findes ikke i subarrayet da de alle er knyttet til sammen CVR nummer
Avatar billede starf Nybegynder
16. november 2014 - 16:20 #7
Hej igen

Tak for det sidste, det virker perfekt, så det var et ret godt gæt :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester