TheMovieDB Api, cunoaste cineva fenomenul ?

Cunoaste cineva API-ul de la themoviedb ?

Vreau sa limitez cate sa-mi afiseze si nu gasesc nicicum in api… vazusem la cineva ca avea afisate doar 5 filme din apiul care afiseaza 15 ca de exemplu…

Tu ai probleme în a lua datele din API sau în a le afișa?

http://api.themoviedb.org/3/discover/movie?api_key=8a221fc31fcdf12a8af827465574ffc9

Adresa aceasta de api are in total 17 filme, eu vreau sa-mi arate doar 15 pe site, intelegi ?

sa pun in adresa gen api.themoviedb.org/3/discover/movie?api_key=8a221fc31fcdf12a8af827465574ffc9**&limit=15**

Din ce am vazut eu browse-uind rapid documentatia, nu ai o optiune pentru a seta cate obiecte vrei sa primesti pe o pagina. 17 pare ciudat.

Sa inteleg ca ar trebui eu sa-i setez din php un nr de afisari :-?

Cred ca daca iti trebuie doar 15 rezultate, iei tot JSON-ul de 17 si folosesti doar 15 filme din el, iar restul le adaugi intr-o paginatie interna a ta de 15 rezultate pe pagina (pentru ca api-ul lor iti da 17 rezultate pe pagina). Tine minte totusi ca n-am lucrat cu API-ul lor niciodata, deci s-ar putea sa aberez major :slight_smile:

1 Like

Eii mai bine il las asa si gata, daca ei nu au…Am reusit printr-o metoda sa fac sa apara doar 15, dar imi rupe din primele 2 filme si nu din ultimile 2 + ca se incarca un pic mai greu pagina daca fac asta…

Am reusit : si se incarca si bine… Scuze de prost, ma gandeam ca exista o metoda direct din apiul lor !

Cum extrag doar numele categotegoriilor din

genres":[{"id":28,"name":"Action"},{"id":12,"name":"Adventure"},{"id":35,"name":"Comedy"}]

folosesc $varCategoria = $json[‘genres’][0][‘name’];

dar imi ia doar prima categorie :frowning:

Varianta 1: iterezi fiecare element și extragi doar o cheie:

foreach ( $json['genres'] as $genre ) {
  $genres[] = $genere['name'];
}

Varianta 2: array_map:

$genres = array_map(function($genre) {
  return $genere['name'];
}, $json['genres']);

Varianta 3: implementezi un pluck cu array_filter; ai aici detalii.

$genres = array_map(function($genre) {
  return $genre['name'];
}, $json['genres']);

imi da Array <?php echo $genres; ?>

Tu ce vrei să faci cu aceste taxonomii?

Sa le afisez ca text ex : Filmul face parte din categoria <?php echo $genres; ?>

Ia uite-te aici, te ajută?

m-ar ajuta daca $varLimba = $json[‘spoken_languages’][0][‘name’]; ar lua toate categoriile si nu doar 1 cateogire :-?

Și aici ai aceeași chestie ca mai sus. Cel mai probabil este aceeași rezolvare :slight_smile:

PS: nu am de gând să-ți zic exact cum se face, dar te îndrum spre ce trebuie să cauți.

pai acolo imi da pentru array eu iau cu json, nu vreau rezolvarea directa…dar nici nu imi dai o cale de informatie corecta…doar banuiesti ca ar merge

dar o modatalitate de a calcula 136/60 si sa-mi dea nr intreg inloc de 2.2666666666667 ? gen sa-mi dea ori 2.26 ori 2.27

Sper că glumești. Ți-am dat trei variante, de tine depinde ce folosești.

Hai să facem un mic exercițiu și să vedem cum putem converti un array într-un string, ce zici?


2.26 nu este număr întreg, este float. Tu vrei doar să limitezi numărul de cifre de după virgulă…

S-ar putea ca sprintf('%0.2f', 136/160) să te ajute.

1 Like

number_format()

Voiam defapt sa transform minutele in ore , am rezolvat-o ! Am gandit-o prost la inceput !