Tråd bedømmelse:
  • 0 Stemmer - 0 Gennemsnit
  • 1
  • 2
  • 3
  • 4
  • 5
PHP læs fra json
24-01-2014, 22:08
#11
RE: PHP læs fra json
Denne kode:
Kode:
<?php
    $json = file_get_contents("http://ailicis.cc/json.php");
    $obj = json_decode($json);
    $res = array();

    foreach ($obj->data as $o) {
        if (!isset($o->story) || empty($o->story)) {
            $res[] = $o;
        }
    }

    for ($i = 0; $i < min(5, count($res)); $i++) {
        echo $res[$i]->id . "\n";
    }

?>
...giver følgende output:
Kode:
$ php test.php
168349296705478_199923703548037
168349296705478_193108830896191
168349296705478_189380464602361
168349296705478_187050484835359
168349296705478_182074215332986
Find alle beskeder fra denne bruger
Citer denne besked i et svar
24-01-2014, 22:53
#12
RE: PHP læs fra json
(24-01-2014, 22:08)BlimBlamBlar Skrev: Denne kode:
Kode:
<?php
    $json = file_get_contents("http://ailicis.cc/json.php");
    $obj = json_decode($json);
    $res = array();

    foreach ($obj->data as $o) {
        if (!isset($o->story) || empty($o->story)) {
            $res[] = $o;
        }
    }

    for ($i = 0; $i < min(5, count($res)); $i++) {
        echo $res[$i]->id . "\n";
    }

?>
...giver følgende output:
Kode:
$ php test.php
168349296705478_199923703548037
168349296705478_193108830896191
168349296705478_189380464602361
168349296705478_187050484835359
168349296705478_182074215332986

Jeg håber ikke at det gør noget at jeg leger lidt med det ^^
<?php
$token = " :) ";
$page = "Ailicis.cc";
$json = file_get_contents("https://graph.facebook.com/".$page."/posts?access_token=".$token);
$object = json_decode($json);
$res = array();
$i = 0;

while(count($res) < min(5, count($object->data)){
if(!isset($object->data[$i])) array_push($res, $object->data[$i]);
$i++;
}
?>
Mangler du hjælp?
Regler |  E-mail (PGP)
Besøg denne brugers hjemmeside Find alle beskeder fra denne bruger
Citer denne besked i et svar
24-01-2014, 22:58 (Denne besked var sidst ændret: 24-01-2014, 22:59 af ailicis.)
#13
RE: PHP læs fra json
tak BlimBlamBlar & Doctor Blue det virker nu :)

(24-01-2014, 22:53)Doctor Blue Skrev: Jeg håber ikke at det gør noget at jeg leger lidt med det ^^

kan ikke se hvad du har lavet :P ?
Er ordblind, så stavefejl er gratis! XD
Ailicis.cc | Quadcopter | Bitcoin | Facebook | Skype
Besøg denne brugers hjemmeside Find alle beskeder fra denne bruger
Citer denne besked i et svar
24-01-2014, 23:11
#14
RE: PHP læs fra json
Så lad os da endelig lege videre Smile
<?php
$json = file_get_contents("http://ailicis.cc/json.php");
$obj = json_decode($json);
$res = array();

while (count($res) < 5 && !empty($obj->data)) {
$o = array_pop($obj->data);
if (!isset($o->story) || empty($o->story)) {
$res[] = $o;
}
}

foreach ($res as $o) {
echo $o->id . "\n";
}

?>
Find alle beskeder fra denne bruger
Citer denne besked i et svar
24-01-2014, 23:14 (Denne besked var sidst ændret: 24-01-2014, 23:17 af Doctor Blue.)
#15
RE: PHP læs fra json
(24-01-2014, 22:58)ailicis Skrev: tak BlimBlamBlar & Doctor Blue det virker nu :)


kan ikke se hvad du har lavet :P ?

Det var bare en kortere udgave af den samme løsning :)

@BlimBlamBlar det er jo bare længere? :D
Man kan i øvrigt godt nøjes med en af !isset() eller empty(), forskellen i funktion er meget meget lille (empty siger at "" er en tom variabel, men isset returnerer true, selvom isset ville returnere false på en variabel med værdien NULL). Empty er nok bedre end isset i den her sammenhæng.
Mangler du hjælp?
Regler |  E-mail (PGP)
Besøg denne brugers hjemmeside Find alle beskeder fra denne bruger
Citer denne besked i et svar
24-01-2014, 23:22
#16
RE: PHP læs fra json
Jeg bruger isset for at undgå warnings...refererer du til en usat member, så vil PHP give advarsler medmindre du har slået dem fra.
Find alle beskeder fra denne bruger
Citer denne besked i et svar
24-01-2014, 23:47
#17
RE: PHP læs fra json
sådan her ser min kode ud nu :)
- forstår ikke helt det med isset ?

<?php

//facebook token
$token = " :P ";
//facebook site name
$page = "Ailicis.cc";

//replace this
$replace_this = array("Ailicis.cc shared a photo.");
//replace to
$replace_to = array("");

//load json url
$json = file_get_contents("https://graph.facebook.com/".$page."/posts?access_token=".$token);
//replace words
$json = str_replace($replace_this, $replace_to, $json);

$obj = json_decode($json);
$res = array();

foreach ($obj->data as $o) {
if (!isset($o->story) || empty($o->story)) {
$res[] = $o;
}
}

// start and stop post
for ($i = 0; $i < min(5, count($res)); $i++) {

//load real id number
$smallid = substr($res[$i]->id, 16);

echo "<div id='fb-root'></div> <script>(function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0]; if (d.getElementById(id)) return; js = d.createElement(s); js.id = id; js.src = '//connect.facebook.net/da_DK/all.js#xfbml=1'; fjs.parentNode.insertBefore(js, fjs); }(document, 'script', 'facebook-jssdk'));</script>";
echo "<div class='fb-post' data-href='https://www.facebook.com/".$page."/posts/".$smallid."' data-width='466'><div class='fb-xfbml-parse-ignore'><a href='https://www.facebook.com/Ailicis.cc/posts/.".$smallid."'></a>Loading</div></div>";


}

?>
Er ordblind, så stavefejl er gratis! XD
Ailicis.cc | Quadcopter | Bitcoin | Facebook | Skype
Besøg denne brugers hjemmeside Find alle beskeder fra denne bruger
Citer denne besked i et svar
25-01-2014, 10:57
#18
RE: PHP læs fra json
(24-01-2014, 23:22)BlimBlamBlar Skrev: Jeg bruger isset for at undgå warnings...refererer du til en usat member, så vil PHP give advarsler medmindre du har slået dem fra.

Ikke siden PHP 5.4 :)
http://dk1.php.net/manual/en/function.empty.php
Citer:No warning is generated if the variable does not exist. That means empty() is essentially the concise equivalent to !isset($var) || $var == false.
Mangler du hjælp?
Regler |  E-mail (PGP)
Besøg denne brugers hjemmeside Find alle beskeder fra denne bruger
Citer denne besked i et svar
25-01-2014, 10:59
#19
RE: PHP læs fra json
(24-01-2014, 23:47)ailicis Skrev: sådan her ser min kode ud nu :)
- forstår ikke helt det med isset ?

isset tjekker om variablen eksisterer. Hvis du prøver at læse eller sammenligne med en variabel der ikke er defineret vil du få en notice. Desuden vil den evaluere til 0, og det kan godt give lidt problemer (Udover det faktum at det fylder din fejllog).
Mangler du hjælp?
Regler |  E-mail (PGP)
Besøg denne brugers hjemmeside Find alle beskeder fra denne bruger
Citer denne besked i et svar
« Ældre | Nyere »




User(s) browsing this thread: 1 Gæst(er)