Mit der Veröffentlichung der neuen Envato Marketplace-API können Entwickler von Drittanbietern auf eine Fülle von Informationen zugreifen, um alle möglichen nützlichen Anwendungen zu erstellen. In diesem Lernprogramm erfahren Sie, wie Sie Ihre eigene iPhone-App mit den Daten der neuen API erstellen. Auch wenn Sie kein iPhone besitzen, können Sie die Grundlagen zur Verwendung von PHP und JSON erlernen.
Die App, die wir erstellen werden, basiert auf meiner iPhone-App, Envato Marketplace Mobile. Während wir nicht die gesamte App neu erstellen, erhalten Sie in diesem Tutorial eine allgemeine Vorstellung davon, wie sie erstellt wurde. Dieses Tutorial richtet sich an PHP- und JSON-Anfänger und dient als Grundlage für die Erstellung fortschrittlicherer PHP-Anwendungen.
Bevor mit dem Abrufen von Daten mithilfe der API begonnen werden kann, müssen wir lernen, wie auf sie zugegriffen werden kann. Die API ist in 5 Teile aufgeteilt:
Weitere Informationen zur API finden Sie hier.
Nun, da wir wissen, was für den Zugriff auf die API erforderlich ist, können wir sie in die Praxis umsetzen. Da wir möchten, dass andere unsere großartige App verwenden, müssen wir sofort einen Benutzernamen und einen API-Schlüssel erhalten. Wir werden also einige PHP-Variablen vom Browser abrufen.
if (isset ($ _ GET ['user']) && $ _GET ['user']! = "") $ userName = $ _GET ['user']; if (isset ($ _ GET ['key']) && $ _GET ['key']! = "") $ apiKey = $ _GET ['key']; else echo 'Die API-Taste ist nicht festgelegt!'; Ausfahrt; else echo 'Benutzername nicht festgelegt!'; Ausfahrt;
Der obige Code prüft, ob die Variablen vorhanden sind Nutzer und Schlüssel wurden gesetzt - und beendet, wenn nicht. Außerdem wird geprüft, ob die globale Variable nicht leer ist.
Nun, da wir die erforderlichen Informationen haben, können wir sie nutzen, um unsere Daten abzurufen. Dazu erstellen wir einfach eine URL mit dem in der Einleitung beschriebenen Format.
// Erstellt einen String, der für den Zugriff auf die API verwendet wird. $ Json_url = "http://marketplace.envato.com/api/edge/".$userName."/".$apiKey."/vitals+recent-sales .json ";
Beachten Sie, dass wir die Edge-Version verwenden und unsere vorherigen Variablen für den Benutzernamen und den API-Schlüssel verwenden. Zum Schluss holen wir das ab Vitals und die letzten Verkäufe Datensätze im JSON-Format.
Nachdem wir unsere URL für den Zugriff auf die API erstellt haben, müssen wir deren Inhalt lesen, damit sie an die json_decode-Funktion übergeben werden können. Dies erfordert eine tatsächliche Json-Datei und nicht nur eine URL. Also, lasst uns fortfahren und die file_get_contents () Funktion zum Lesen des Inhalts der URL.
// Den Inhalt der $ json_url-Zeichenfolge abrufen $ json_contents = file_get_contents ($ json_url); // Ein kleiner Fehler beim Überprüfen von if (! $ Json_contents) echo "Fehler: Die JSON-Datei konnte nicht gelesen werden. Bitte überprüfen Sie Ihren Benutzernamen und den API-Schlüssel."; Ausfahrt;
Wir sind endlich bereit, die JSON-Daten in ein Array umzuwandeln, damit wir sie in unserer Anwendung verwenden können. Um diese Aufgabe zu erfüllen, verwenden wir die json_decode () Funktion, die die Daten aus unserer $ json_contents Variable und geben sie in ein Array aus.
// Unsere Daten in ein Array ausgeben $ json_data = json_decode ($ json_contents, true);
Wir verwenden zwei Parameter in dieser Funktion, der erste ist der String, den wir decodieren möchten, und der zweite teilt der Funktion mit, die Daten als Array auszugeben. Das ist es! Wir sind jetzt bereit, unsere Daten dem Benutzer anzuzeigen.
Wir haben unsere Daten abgerufen und jetzt ist es Zeit, sie dem Benutzer zu zeigen. Der Einfachheit halber fügen wir unseren Frontend-HTML-Code in dieselbe Datei wie unser PHP-Code ein. Fügen Sie also den Standard-HTML-Dokumentcode unter Ihrem PHP-Code hinzu.
Meine Nettuts iPhone App - Meine Nettuts iPhone App
Beachten Sie, dass in der
Fügen Sie ein einfaches div hinzu, das den aus der API abgerufenen Benutzernamen anzeigt. Wir könnten dies mit der $ userName -Variable tun, wie wir sie im Seitentitel verwendet haben. Die Verwendung von JSON ist jedoch aufregender.
Was der obige Code tut, ist die Nutzername von dem Vitals Array, das ist ein Array in unserem $ json_data Array, das zuvor erstellt wurde. Macht Sinn?
Hier ist die Struktur des Arrays, das im API-Beispiel verwendet wird: Array ([vitals] => Array ([Benutzername] => ryan [balance] => 32.75))
Als Nächstes möchten wir dem Benutzer sein Guthaben anzeigen. Dies geschieht auf dieselbe Weise, wie wir den Benutzernamen angezeigt haben. Dieses Mal werden wir jedoch einfach von "Benutzername" zu "Guthaben" wechseln. Der Rest ist einfach für Layout und Styling.
"; $ count = $ count + 1; else break;?>Guthaben: $Letzte Verkäufe:
Aktuelle Verkäufe auflisten
Das letzte, was auf unserer Agenda steht, ist die Anzeige der letzten Verkäufe für einen Benutzer. Dies ist etwas komplizierter als in den vorherigen Beispielen. Wenn Sie jedoch schon einmal mit Arrays gearbeitet haben, sollten Sie damit umgehen können.
Verkauft ". $ Value ['item']." zum $ ". $ value ['Betrag']."
Hier gibt es viel zu verdauen, also fangen wir mit dem an für jeden Aussage. Zuerst erstellen wir einen $ salesArray aus dem kürzlich verkauften Array innerhalb von $ json_data. Das ist nicht notwendig, aber ich denke es sieht sauberer aus. Die foreach-Anweisung erstellt eine $ wert für jede Zeile in der $ salesArray Array und ermöglicht es uns, Informationen aus jeder Zeile abzurufen. Im Grunde verwenden Sie $ value, um Daten aus der Zeile abzurufen, während die foreach-Anweisung diese Schleife durchläuft.
Als nächstes folgt der Code, der jedes Mal ausgeführt wird, wenn die foreach-Anweisung eine Zeile durchläuft. Anstatt alle letzten Verkäufe anzuzeigen, möchte ich nur zehn auflisten. Wenn also die Anzahl der geprüften Zeilen zehn überschreitet, wird die Schleife unterbrochen. Um die Anzahl der Zeilen zu ändern, die die Anweisung durchläuft, ändern Sie einfach zehn in die gewünschte Anzahl. Das Anzeigen der Zeilen ist eigentlich ganz einfach, da es notwendig ist, jede Zeile innerhalb eines Div mit einem kleinen Symbol auszuspielen. Wir nehmen das $ wert um auf die Verkaufsinformationen aus dem Array zuzugreifen. Wir ziehen "Artikel", Welches ist der Titel und "Menge" Dies ist der Betrag, den der Autor beim Verkauf getätigt hat. Endlich "$ count + 1" Erhöht nur die Anzahl der Zeilen, die die Anweisung durchlaufen hat. Du solltest jetzt fertig sein! Laden Sie die Datei auf einen Testserver und prüfen Sie, ob sie funktioniert!
Wenn Sie noch kein Envato Marketplace-Konto haben, können Sie das Beispiel-Login verwenden:
Nun, unsere neue App funktioniert gut, aber sie sieht schlecht aus - was bedeutet, dass es an der Zeit ist, ein paar CSS herauszuholen. Ich nehme an, Sie wissen genug, um den folgenden Code zu verstehen, da ich bis auf ein paar Dinge nicht weiter darauf eingehen werde. #Browser wird vom iPhone / Touch verwendet, um sicherzustellen, dass die Seite, wenn sie zu klein ist, den Bildschirm ausfüllt. body.lanscape #browser Das Gleiche gilt jedoch, wenn sich der Browser im Querformat befindet.
body background: #efefef; Marge: 0px; Polsterung: 0px; Schriftfamilie: Helvetica; -webkit-touch-callout: keine; -webkit-Textgröße anpassen: keine; Breite: 100%; Farbe: # 2a2a2a; #browser / * sorgt dafür, dass wir immer den gesamten Bildschirm ausfüllen * / min-height: 416px; body.landscape #browser min-height: 268px; h3 Rand unten: 5px; p Marge: 0 0 5px 0; / * Layout * / #header Auffüllen: 10px 5px 5px; Höhe: 30px; Farbe: #fff; Schriftgröße: 22px; Hintergrund: URL (header_bg.jpg) repeat-x; #username font-size: 18px; Schriftdicke: fett; Text-Transformation: Großbuchstaben; Polsterung: 5px; / * WebKit unterstützt Text-Shadow… Warum also nicht hübsch aussehen? * / Text-Shadow: 0 1px 0 rgba (0, 0, 0, 0.5); Farbe: #fff; Hintergrund: # 498929; Border-Top: 1px fest # 85c952; Rahmen unten: 1px fest # 34661c; #content padding: 5px; Polsterauflage: 10px; .icon vertikal-align: text-top; Rand rechts: 5px; .line padding-bottom: 5px; Rahmen unten: 1px fest #cccccc; Rand unten: 5px;
Es ist an der Zeit, dass Ihre großartige App endlich iPhone-kompatibel wird. Das ist eigentlich ganz einfach und beinhaltet nur eine Codezeile.
Fügen Sie einfach den obigen Code direkt unter dem ein
Nun ja, wir sind fertig! Sie können das fertige Produkt unten sehen.
Du hast es bis zum Ende geschafft. Ich hoffe, dass dies eine gute Einführung für diejenigen war, die sich noch in den Anfängen der Verwendung von PHP und JSON befinden. Sie können jetzt Ihre eigene Killer-App mithilfe der API und JSON generell erstellen.
Denken Sie daran, dieses Tutorial richtet sich an Anfänger und alle, die einen Starthilfe für die Verwendung der API benötigen.