Результаты API фильтрации неисправностей с помощью PHP / условных выражений

Во-первых, заранее извиняюсь за то, что может быть довольно зеленым вопросом! Я только знакомлюсь с PHP, и нет никакой поддержки API для …

В настоящее время я пытаюсь отфильтровать некоторые результаты, которые я вернул, используя Etsy API. Я хотел бы ограничить их только определенной категорией или идентификатором таксономии, но ни одно из используемых PHP-условий, похоже, не возвращает никаких результатов. Несколько вещей, которые я пробовал до сих пор:

<?php

define("API_KEY", XXX);

$url = "https://openapi.etsy.com/v2/listings/active?tags=unicorn,unicorns&keywords=unicorn,unicorns&includes=Images:1:0&api_key=" . API_KEY;

while (isset($url) && $url != '' && $next_page < 3) {

$curl = curl_init($url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$response_body=curl_exec($curl);
curl_close($curl);

$response = json_decode($response_body);

$taxo = $response->results->taxonomy_id;

if($taxo == 66) {

foreach ($response->results as $listing) {
echo "<li>". '<a href="' . $listing->url . '" target="_blank"><img src="' . $listing->Images[0]->url_170x135 . '" alt=""></a>'
. "<p>" . $listing->title . "</p>". "<p>~*~" . $listing->price . " " . $listing->currency_code . "~*~</p>" .
$listing->taxonomy_id .
"</li>";
}
} else {
echo "NO RESULTS";
}

$next_page = $response->pagination->next_page;
$baseUrl = "https://openapi.etsy.com/v2/listings/active?tags=unicorn,unicorns&keywords=unicorn,unicorns&includes=Images:1:0&api_key=" . API_KEY . "&page=";
$url = $baseUrl . $next_page;

}

?>

Я пробовал как и для здесь:

<?php

define("API_KEY", XXX);

$url = "https://openapi.etsy.com/v2/listings/active?tags=unicorn,unicorns&keywords=unicorn,unicorns&includes=Images:1:0&api_key=" . API_KEY;

if(isset($url) && $url != '' && $next_page < 3 && $taxo == 66) {

$curl = curl_init($url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$response_body=curl_exec($curl);
curl_close($curl);

$response = json_decode($response_body);

$taxo = $response->results->taxonomy_id;

foreach ($response->results as $listing) {
echo "<li>". '<a href="' . $listing->url . '" target="_blank"><img src="' . $listing->Images[0]->url_170x135 . '" alt=""></a>'
. "<p>" . $listing->title . "</p>". "<p>~*~" . $listing->price . " " . $listing->currency_code . "~*~</p>" .
$listing->taxonomy_id .
"</li>";
}

$next_page = $response->pagination->next_page;
$baseUrl = "https://openapi.etsy.com/v2/listings/active?tags=unicorn,unicorns&keywords=unicorn,unicorns&includes=Images:1:0&api_key=" . API_KEY . "&page=";
$url = $baseUrl . $next_page;

var_dump($url);

}

else {
echo "NO RESULTS";
}

?>

Я чувствую, что упускаю что-то очевидное здесь, но я супер застрял. Любое руководство о том, что я делаю не так?


Примеры ответов, возвращаемых для листинга с использованием вызова, включенного в приведенный выше код:

Результаты:

[

{
list_id: 264154010,
состояние: «активный»,
user_id: 22167794,
идентификатор_категории: 69190377,
название: «Плавай с русалкой», надпись от руки, акварель, зелено-синий фиолетовый »,
creation_tsz: 1452898819,
Окончание_ц: 1463349619,
original_creation_tsz: 1452898657,
last_modified_tsz: 1452898849,
цена: «10.00»,
код валюты: «USD»,
количество: 15,
теги: [
«радуга»,
«единороги»,
«Феи»,
«Русалки»,
«пурпурный «,
«Синий»,
«Зеленый»,
«ручная надпись»,
«Аннотация»,
«Надпись»,
«рука»,
«акварель»],
путь_категории: [
«Изобразительное искусство»,
«Распечатать»,
«Жикл»],
category_path_ids: [
68887312,
68892154,
69190377
],
URL: «https://www.etsy.com/listing/264154010/swim-with-mermaids-print-hand-lettering?utm_source=funappyay&utm_medium = апи&utm_campaign = апи»,
Taxonomy_id: 121,
путь_связи: [
«Изобразительное искусство & Коллекционирование»,
«Печать»,
«Жикл»],
},

{
list_id: 234448248,
состояние: «активный»,
user_id: 30961143,
category_id: 68887486,
title: «Сохраняйте спокойствие и обнимите меня, детское одеяло афганского узора крючком от Peach.Unicorn»,
creation_tsz: 1452898542,
Окончание_ц: 1463349342,
original_creation_tsz: 1432388408,
last_modified_tsz: 1452898542,
цена: «1.99»,
код валюты: «GBP»,
количество: 41,
теги: [
«Малыш»,
«Покрывало на кровать»,
«Вязание»,
«Узор вязания крючком»,
«Одеяло»,
«Сохраняй спокойствие»,
«Слойка»,
«Детское одеяло»,
«Мгновенная загрузка»,
«малышка»,
«малыш»,
«Обними меня»,
«образец пряжи»],
путь_категории: [
«Узоры»],
category_path_ids: [
68887486
],
URL: «https://www.etsy.com/listing/234448248/keep-calm-and-hug-me-baby-blanket-afghan?utm_source=funappyay&utm_medium = апи&utm_campaign = апи»,
Taxonomy_id: 729,
путь_связи: [
«Товары для рукоделия & Инструменты»,
«Узоры & Учебники «],
},

0

Решение

Хорошо, я понял это! В случае, если кто-то еще ищет ответ в будущем, мое несколько грязное решение:

<?php

define("API_KEY", XXX);

$url = "https://openapi.etsy.com/v2/listings/active?tags=unicorn,unicorns&keywords=unicorn,unicorns&includes=Images:1:0&api_key=" . API_KEY;

while(isset($url) && $url != '') {

$curl = curl_init($url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$response_body=curl_exec($curl);
curl_close($curl);

$response = json_decode($response_body);

foreach ($response->results as $listing) {

$taxo = $listing->taxonomy_id;

if($taxo == 41 || $taxo == 873){
echo '<li><a href="'
. $listing->url .
'" target="_blank"><img src="'
. $listing->Images[0]->url_170x135 .
'" alt=""></a>'
. "<p>" . $listing->title . "</p>". "<p>~*~" . $listing->price . " " . $listing->currency_code . "~*~</p>" .
$taxo . '</li>';
}
}

$next_page = $response->pagination->next_page;
$baseUrl = "https://openapi.etsy.com/v2/listings/active?tags=unicorn,unicorns&keywords=unicorn,unicorns&includes=Images:1:0&api_key=" . API_KEY . "&page=";
$url = $baseUrl . $next_page;

}

?>

Все еще немного борется с пониманием того, почему установка $ taxo вне цикла foreach оказалась неудачной, поэтому любое понимание по-прежнему ценится.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]