TBe
7. Oktober 2015 um 14:40
1
Hallo zusammen,
ich brauche bitte nochmals Hilfe von den PHP Profis .
Ich habe einen String welcher in der Länger variert und wo ich einen bestimmten Bereich als Text brauche :
[3] => ","id":1829,"label":"James Bond ","plot":"Beschreibung ........","thumbnail":"image:
Ich brauche den Text ab „Beschreibung“ bis zum Ausführungszeichen. Mit
$info=( explode(':',$string))
komme ich schon nahe ran, aber wie schneide ich dann hinten den Teil ab ,"thumbnail ab ?
Ich hoffe das war nicht zu kompliziert ausgedrückt. Wie gesagt die Länge des Textes variiert,s.d. ich keinen festen Bereich
ausschneiden kann.
Bestimmt hat jemand eine Idee.
Gruss Thomas
Bayaro
7. Oktober 2015 um 14:46
2
Hi Thomas!
Sieht für mich eher aus wie ein Array und da würde man leichter dran kommen. Aber da ich grad nicht testen kann, erstmal eine Variante mit preg_match Und du könntest aber nochmal mehr Infos rausrücken, wo die Daten herkommen, ob es nicht doch ein Array ist, …
Du müsstest eher ein explode mit „,“ machen um ein passendes Array zu erhalten. Zusammen mit „split“. Aber kann wie gesagt leider grad nicht testen. Dann hättest du z.B. einen „key“ mit Namen „plot“ und davon der Wert wäre dann deine Beschreibung.
Edit: So in der Art wie hier:
http://www.php.de/forum/webentwicklung/php-einsteiger/php-tipps-2010/73436-erledigt-mehrdimensionale-arrays-mit-explode
PHP - Exploding each item in an array created by explode - Stack Overflow
Alternative Version mit preg_match:
preg_match('|.*plot":"(.*)",|', $StringInVariable, $Ausgabe);
print_r($Ausgabe);
…in $Ausgabe[1] sollte dann dein Plot stehen und du kannst den weiterverarbeiten…
Grüße,
Chris
TBe
7. Oktober 2015 um 14:59
3
Hallo Chris,
korrekt es ist ein Array. Das ist eine Datei die ich vorher per explode schon in ein erstes Array gewandelt habe.
Die Daten kommen per JSON RPC von Kodi / XMBC. Der gesuchte String steht faktisch in Zelle [3] vom Array, aber in der Form, wie ich es geschrieben hab. Der Text ist nur zu lang, daher hab ich das gekürzt.
Thomas
Bayaro
7. Oktober 2015 um 15:02
4
Du machst also erst ein „json_decode “?
Dann kannst du aber doch direkt auf $data->plot zugreifen…?!
Du solltest ein wenig mehr posten
Grüße,
Chris
TBe
7. Oktober 2015 um 15:14
5
Dankeee !! hab ich Depp natürlich nicht gemacht .
Schön wenn es so einfach geht …
Mit dem json_decode spar ich mir alles und da stehen alle Daten perfekt in einem array !
Wie immer ein dickes Danke !
Thomas
Bayaro
7. Oktober 2015 um 15:17
6
Kein Problem, es funktioniert, also alles gut
Deswegen sag ich immer allen > möglichst viel an Infos posten und möglichst auch das Skript was Probleme bereit
Grüße,
Chris