{"id":817031,"date":"2018-10-30T09:01:43","date_gmt":"2018-10-30T09:01:43","guid":{"rendered":"https:\/\/www.knowband.com\/blog\/?p=22325\/"},"modified":"2022-08-13T12:01:14","modified_gmt":"2022-07-18T12:42:09","slug":"how-to-use-graphql-in-php","status":"publish","type":"post","link":"https:\/\/www.knowband.com\/blog\/pl\/bez-kategorii\/how-to-use-graphql-in-php\/","title":{"rendered":"How to use GraphQL in PHP?"},"content":{"rendered":"<p><html lang=\"pl\"><head><meta charset=\"utf-8\"><\/head><body><\/p>\n<h2 style=\"font-size: 22px; margin-bottom: 15px; text-align: justify;\">Czy s\u0142ysza\u0142e\u015b o GraphQL?<\/h2>\n<p><a href=\"https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2018\/10\/Main-Banner-graphql-php-2.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-817013\" src=\"https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2018\/10\/Main-Banner-graphql-php-2.png\" alt=\"Jak u\u017cywa\u0107 GraphQL w PHP?\" width=\"760\" height=\"300\" srcset=\"https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2018\/10\/Main-Banner-graphql-php-2.png 760w, https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2018\/10\/Main-Banner-graphql-php-2-300x118.png 300w\" sizes=\"auto, (max-width: 760px) 100vw, 760px\" \/><\/a><\/p>\n<p style=\"text-align: justify;\">GraphQL to nowoczesny j\u0119zyk zapyta\u0144 dla API. Innymi s\u0142owy, mo\u017cemy powiedzie\u0107, \u017ce jest to nowoczesny j\u0119zyk zapyta\u0144 warstwy aplikacji.<\/p>\n<p style=\"text-align: justify;\">Za pomoc\u0105 GraphQL mo\u017cemy pobiera\u0107 dane z wywo\u0142a\u0144 API i dzia\u0142a on na HTTP jako REST. Zapewnia klientowi pot\u0119\u017cn\u0105 opcj\u0119, aby pyta\u0142, czego dok\u0142adnie potrzebuje, i pomaga we wzro\u015bcie lub ocenie API.<\/p>\n<h2 style=\"font-size: 22px; margin-bottom: 15px; text-align: justify;\">Korzy\u015bci z GraphQL<\/h2>\n<p><a href=\"https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2018\/10\/Info-Banner-graphql-php-1.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-817014\" src=\"https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2018\/10\/Info-Banner-graphql-php-1.png\" alt=\"Korzy\u015bci z GraphQl\" width=\"760\" height=\"477\" srcset=\"https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2018\/10\/Info-Banner-graphql-php-1.png 760w, https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2018\/10\/Info-Banner-graphql-php-1-300x188.png 300w\" sizes=\"auto, (max-width: 760px) 100vw, 760px\" \/><\/a><\/p>\n<ul>\n<li style=\"text-align: justify;\">Dostarcza tylko ograniczone dane, kt\u00f3rych faktycznie potrzebujemy. Nigdy nie pobierze \u017cadnych dodatkowych danych ani mniej danych, kt\u00f3rych nie potrzebujesz.<\/li>\n<li style=\"text-align: justify;\">Jest to pot\u0119\u017cny system open source.<\/li>\n<li style=\"text-align: justify;\">Daje mo\u017cliwo\u015b\u0107 efektywnego kodowania. Za\u0142\u00f3\u017cmy na przyk\u0142ad, \u017ce tabela zawiera 40 kolumn, a czasami potrzebujemy tylko 10 kolumn, czasami 20 itd. Aby rozwi\u0105za\u0107 ten problem, mamy dwie opcje w normalnym API, albo pobierz wszystkie dane w ka\u017cdym wywo\u0142aniu API i u\u017cyj dowolnej, kt\u00f3r\u0105 chcemy, albo musimy napisa\u0107 liczb\u0119 interfejs\u00f3w API dla tej samej tabeli, aby\u015bmy mogli wywo\u0142a\u0107 wydajne API zgodnie z wymaganiami. Ale w GraphQL musimy napisa\u0107 tylko jedno API. Tak wi\u0119c kod linii r\u00f3wnie\u017c zostaje skr\u00f3cony.<\/li>\n<li style=\"text-align: justify;\">Interfejsy API GraphQL s\u0105 ustrukturyzowane pod wzgl\u0119dem typ\u00f3w i p\u00f3l.<\/li>\n<\/ul>\n<h2 style=\"font-size: 22px; margin-bottom: 15px; text-align: justify;\"><a href=\"https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2018\/10\/info-Banner-graphql-php-3.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-817018\" src=\"https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2018\/10\/info-Banner-graphql-php-3.png\" alt=\"J\u0119zyk obs\u0142ugiwany przez GraphQL\" width=\"760\" height=\"300\" srcset=\"https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2018\/10\/info-Banner-graphql-php-3.png 760w, https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2018\/10\/info-Banner-graphql-php-3-300x118.png 300w\" sizes=\"auto, (max-width: 760px) 100vw, 760px\" \/><\/a><\/h2>\n<p style=\"text-align: justify;\">GraphQL obs\u0142uguje r\u00f3\u017cne j\u0119zyki, takie jak<\/p>\n<ul>\n<li>C#<\/li>\n<li>. NET<\/li>\n<li>Clojure<\/li>\n<li>Eliksir<\/li>\n<li>Erlang<\/li>\n<li>Go<\/li>\n<li>Groovy<\/li>\n<li>Jawa<\/li>\n<li>JavaScript<\/li>\n<li>PHP<\/li>\n<li>Python<\/li>\n<li>Scala<\/li>\n<li>Rubin<\/li>\n<\/ul>\n<p style=\"text-align: justify;\">W tym blogu dowiemy si\u0119 o GraphQL w PHP.<\/p>\n<p style=\"text-align: justify;\">Po pierwsze powinni\u015bmy wiedzie\u0107, \u017ce w dowolnym j\u0119zyku, aby korzysta\u0107 z GraphQL, musimy zaimportowa\u0107 ich bibliotek\u0119.<\/p>\n<p style=\"text-align: justify;\">W PHP mo\u017cemy u\u017cy\u0107 tego pliku biblioteki: webonyx\/graphql-php.<\/p>\n<h2 style=\"font-size: 22px; margin-bottom: 15px; text-align: justify;\">Instalacja<\/h2>\n<p style=\"text-align: justify;\">U\u017cywaj\u0105c kompozytora, po prostu uruchom:<\/p>\n<pre class=\"brush: actionscript3; gutter: true\">kompozytor wymaga webonyx\/graphql-php<\/pre>\n<h2 style=\"font-size: 22px; margin-bottom: 15px; text-align: justify;\">Jak GraphQL pobiera dane za pomoc\u0105 zapyta\u0144?<\/h2>\n<p style=\"text-align: justify;\">W REST API zwraca dane w okre\u015blonej strukturze. Pisz\u0105c API w REST, musimy zdefiniowa\u0107 struktur\u0119 danych, jakie dane b\u0119d\u0105 zwracane, ale GraphQL nie ma zdefiniowanej struktury, kt\u00f3r\u0105 zwr\u00f3ci. Mo\u017ce zmieni\u0107 ich struktur\u0119 zgodnie z potrzebami klienta.<\/p>\n<p style=\"text-align: justify;\">Klient musi wys\u0142a\u0107 do serwera troch\u0119 wi\u0119cej informacji, aby zadeklarowa\u0107 swoje wymagania, i ta informacja nazywa si\u0119 Zapytanie.<\/p>\n<p style=\"text-align: justify;\">W zapytaniu musimy zdefiniowa\u0107 pola g\u0142\u00f3wne, innymi s\u0142owy m\u00f3wimy to samo, co \u0142adunek dla us\u0142ugi.<\/p>\n<h2 style=\"font-size: 22px; margin-bottom: 15px; text-align: justify;\">rozwi\u0105za\u0107<\/h2>\n<p><a href=\"https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2018\/10\/Screenshot_1.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-817021 size-full\" src=\"https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2018\/10\/Screenshot_1-e1658148119764.png\" alt=\"Resolver w GraphQL PHL\" width=\"949\" height=\"367\" srcset=\"https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2018\/10\/Screenshot_1-e1658148119764.png 949w, https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2018\/10\/Screenshot_1-e1658148119764-300x116.png 300w, https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2018\/10\/Screenshot_1-e1658148119764-768x297.png 768w\" sizes=\"auto, (max-width: 949px) 100vw, 949px\" \/><\/a><\/p>\n<p style=\"text-align: justify;\">W rzeczywistych aplikacjach takich jak aplikacje e-commerce tj. PrestaShop, OpenCart, Magneto itp. musimy pobra\u0107 dane klienta z bazy danych przez customerId i musimy je zwr\u00f3ci\u0107. Naszym celem jest to, \u017ce nie musimy zwraca\u0107 tablic, musimy zwraca\u0107 warto\u015bci, a\ufffdgraphql-php\ufffdprzeka\u017ce je nietkni\u0119te do zagnie\u017cd\u017conych program\u00f3w t\u0142umacz\u0105cych.<\/p>\n<p style=\"text-align: justify;\">Przelicznik jest w zasadzie funkcj\u0105 oddzwaniania dla ka\u017cdego pola. Dla wszystkich p\u00f3l zawsze istnieje domy\u015blny przelicznik. Kiedy definiujemy nasz\u0105 w\u0142asn\u0105 funkcj\u0119\ufffdresolve\ufffd dla pola, po prostu zast\u0119pujemy domy\u015blny resolver.<\/p>\n<h2 style=\"font-size: 22px; margin-bottom: 15px; text-align: justify;\">Jak zdefiniowa\u0107 schemat zapytania?<\/h2>\n<pre class=\"brush: actionscript3; gutter: true\">$schema_obj = nowy schemat { \"query\" =&gt; $queryType, \"mutation\" =&gt; $mutationType, \"subscription\" =&gt; $subscriptionType }<\/pre>\n<h3 style=\"font-size: 18px; margin-bottom: 15px; text-align: justify;\"><strong>Przyk\u0142ad<\/strong><\/h3>\n<p style=\"text-align: justify;\">Poniewa\u017c jest to blog dla pocz\u0105tkuj\u0105cych lub nowszych, zr\u00f3bmy prosty przyk\u0142ad.<\/p>\n<p style=\"text-align: justify;\">Stw\u00f3rzmy system typ\u00f3w, kt\u00f3ry b\u0119dzie przetwarza\u0142 nast\u0119puj\u0105ce proste zapytanie:<\/p>\n<pre class=\"brush: actionscript3; gutter: true\">query { echo(message: \"Cze\u015b\u0107 Knowband, to jest m\u00f3j pierwszy program GraphQL\") }\n<\/pre>\n<p><strong>Uwaga:<\/strong> W tym celu potrzebujemy typu obiektu z echem pola.<\/p>\n<pre class=\"brush: actionscript3; gutter: true\">'Query', 'fields' =&gt; [ 'echo' =&gt; [ 'type' =&gt; Type::string(), 'args' =&gt; [ 'message' =&gt; Type::nonNull(Type::string() ), ], 'resolve' =&gt; function ($root, $args) { return $root['prefix'] . $args['wiadomo\u015b\u0107']; } ], ], ]);<\/pre>\n<p style=\"text-align: justify;\">Opcja \ufffdresolve\ufffd jest\ufffdbardzo wa\u017cn\u0105\ufffdopcj\u0105\ufffddefinicji\ufffdpola.\ufffdJest to\ufffd ta\ufffd,\ufffdkt\u00f3ra\ufffdjest\ufffdodpowiedzialna\ufffdza\ufffdzwr\u00f3cenie\ufffdwarto\u015bci\ufffdnaszego\ufffdpola.\ufffd Warto\u015bci\ufffdp\u00f3l\ufffdskalarnych\ufffdzostan\u0105\ufffdbezpo\u015brednio\ufffduwzgl\u0119dnione\ufffdw\ufffdodpowiedzi\ufffd,podczas gdy\ufffdwarto\u015bci\ufffdp\u00f3l\ufffdkompozytowych\ufffdzostan\u0105\ufffdprzekazywane\ufffddo\ufffd\ufffd zagnie\u017cd\u017cone\ufffdpola\ufffdresolvers.\ufffdPola z\u0142o\u017cone\ufffds\u0105\ufffdinterfejsami,\ufffdpo\u0142\u0105czeniami\ufffdobiektami\ufffditp.<\/p>\n<p style=\"text-align: justify;\">Teraz\ufffdpo\ufffdprzygotowaniu\ufffdnaszego\ufffdtypu\ufffdnapiszmy\ufffdplik\ufffdGraphQL\ufffdendpoint\ufffddla\ufffdgo\ufffdgraphql_program_1.php.<\/p>\n<pre class=\"brush: actionscript3; gutter: true\">$QueryType ]); $Input = file_get_contents('php:\/\/input'); $input_data = json_decode($Input, true); $query_data = $input_data['zapytanie']; $variable_values \u200b\u200b= isset($input_data['variables']) ? $input_data['zmienne'] : null; $warto\u015b\u0107 = ['prefiks' =&gt; 'Wyj\u015bcie: ']; $resultant = GraphQL::executeQuery($schema_obj, $query_data, $value, null, $variable_values); $output_value = $resultant-&gt;toArray(); } catch (\\Exception $e) { $output_value = [ 'errors' =&gt; [ [ 'message' =&gt; $e-&gt;getMessage() ] ] ]; } header('Typ tre\u015bci: aplikacja\/json'); echo json_encode($warto\u015b\u0107_wyj\u015bciowa); ?&gt;<\/pre>\n<h3 style=\"font-size: 18px; margin-bottom: 15px; text-align: justify;\"><strong>Jak mo\u017cemy uruchomi\u0107 kod?<\/strong><\/h3>\n<p>Kod mo\u017cemy uruchomi\u0107 poprzez:<\/p>\n<pre class=\"brush: actionscript3; gutter: true\">php -S localhost:8080 graphql_program_1.php curl https:\/\/localhost:8080 -d '{\"query\": \"zapytanie { echo(wiadomo\u015b\u0107: \\\" Cze\u015b\u0107 Knowband, to jest m\u00f3j pierwszy program GraphQL \\\") }\" }'<\/pre>\n<p>W przypadku jakichkolwiek pyta\u0144 prosimy o kontakt pod adresem support@knowband.com. Knowband zapewnia najlepsze w swojej klasie modu\u0142y dla Prestashop, Opencart, Magento i Magento 2. Zapoznaj si\u0119 z jednym z naszych najpopularniejszych modu\u0142\u00f3w Prestashop o nazwie One page supercheckout:<br \/>\n<iframe loading=\"lazy\" title=\"YouTube video player\" src=\"https:\/\/www.youtube.com\/embed\/1yLcXToR6-g\" width=\"660\" height=\"315\" frameborder=\"0\" allowfullscreen=\"allowfullscreen\"><\/iframe><\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Czy s\u0142ysza\u0142e\u015b o GraphQL? GraphQL to nowoczesny j\u0119zyk zapyta\u0144 dla API. Innymi s\u0142owy, mo\u017cemy powiedzie\u0107, \u017ce jest to nowoczesny j\u0119zyk zapyta\u0144 warstwy aplikacji. Za pomoc\u0105 GraphQL mo\u017cemy pobiera\u0107 dane z wywo\u0142a\u0144 API i dzia\u0142a on na HTTP jako REST. Zapewnia klientowi pot\u0119\u017cn\u0105 opcj\u0119, aby pyta\u0142, czego dok\u0142adnie potrzebuje, i pomaga we wzro\u015bcie lub ocenie API. [&hellip;]<\/p>\n","protected":false},"author":15,"featured_media":817011,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_kbui_enabled":"","footnotes":""},"categories":[],"tags":[28589,28591,28592,28590],"class_list":["post-817031","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","tag-graficznyql","tag-graphicql-w-php","tag-uyj-graphql-w-php","tag-webonyks"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.6 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>How to use GraphQL in PHP? - Knowband Blog | Ecommerce Modules<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.knowband.com\/blog\/pl\/bez-kategorii\/how-to-use-graphql-in-php\/\" \/>\n<meta property=\"og:locale\" content=\"pl_PL\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How to use GraphQL in PHP? - Knowband Blog | Ecommerce Modules\" \/>\n<meta property=\"og:description\" content=\"Czy s\u0142ysza\u0142e\u015b o GraphQL? GraphQL to nowoczesny j\u0119zyk zapyta\u0144 dla API. Innymi s\u0142owy, mo\u017cemy powiedzie\u0107, \u017ce jest to nowoczesny j\u0119zyk zapyta\u0144 warstwy aplikacji. Za pomoc\u0105 GraphQL mo\u017cemy pobiera\u0107 dane z wywo\u0142a\u0144 API i dzia\u0142a on na HTTP jako REST. Zapewnia klientowi pot\u0119\u017cn\u0105 opcj\u0119, aby pyta\u0142, czego dok\u0142adnie potrzebuje, i pomaga we wzro\u015bcie lub ocenie API. [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.knowband.com\/blog\/pl\/bez-kategorii\/how-to-use-graphql-in-php\/\" \/>\n<meta property=\"og:site_name\" content=\"Knowband Blog | Ecommerce Modules\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/Knowband\" \/>\n<meta property=\"article:published_time\" content=\"2018-10-30T09:01:43+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-07-18T12:42:09+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2018\/10\/Main-Banner-graphql-php.png\" \/>\n\t<meta property=\"og:image:width\" content=\"760\" \/>\n\t<meta property=\"og:image:height\" content=\"300\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Sunny Saurabh\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@KnowbandPlugin\" \/>\n<meta name=\"twitter:site\" content=\"@KnowbandPlugin\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Sunny Saurabh\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/pl\\\/bez-kategorii\\\/how-to-use-graphql-in-php\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/pl\\\/bez-kategorii\\\/how-to-use-graphql-in-php\\\/\"},\"author\":{\"name\":\"Sunny Saurabh\",\"@id\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/fr\\\/#\\\/schema\\\/person\\\/57eba27850520f4c8de3853ee8755a55\"},\"headline\":\"How to use GraphQL in PHP?\",\"datePublished\":\"2018-10-30T09:01:43+00:00\",\"dateModified\":\"2022-07-18T12:42:09+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/pl\\\/bez-kategorii\\\/how-to-use-graphql-in-php\\\/\"},\"wordCount\":626,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/fr\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/pl\\\/bez-kategorii\\\/how-to-use-graphql-in-php\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/wp-content\\\/uploads\\\/2018\\\/10\\\/Main-Banner-graphql-php.png\",\"keywords\":[\"GraficznyQL\",\"GraphicQL w PHP\",\"U\u017cyj GraphQL w PHP\",\"Webonyks\"],\"inLanguage\":\"pl-PL\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/pl\\\/bez-kategorii\\\/how-to-use-graphql-in-php\\\/\",\"url\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/pl\\\/bez-kategorii\\\/how-to-use-graphql-in-php\\\/\",\"name\":\"How to use GraphQL in PHP? - Knowband Blog | Ecommerce Modules\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/fr\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/pl\\\/bez-kategorii\\\/how-to-use-graphql-in-php\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/pl\\\/bez-kategorii\\\/how-to-use-graphql-in-php\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/wp-content\\\/uploads\\\/2018\\\/10\\\/Main-Banner-graphql-php.png\",\"datePublished\":\"2018-10-30T09:01:43+00:00\",\"dateModified\":\"2022-07-18T12:42:09+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/pl\\\/bez-kategorii\\\/how-to-use-graphql-in-php\\\/#breadcrumb\"},\"inLanguage\":\"pl-PL\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.knowband.com\\\/blog\\\/pl\\\/bez-kategorii\\\/how-to-use-graphql-in-php\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pl-PL\",\"@id\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/pl\\\/bez-kategorii\\\/how-to-use-graphql-in-php\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/wp-content\\\/uploads\\\/2018\\\/10\\\/Main-Banner-graphql-php.png\",\"contentUrl\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/wp-content\\\/uploads\\\/2018\\\/10\\\/Main-Banner-graphql-php.png\",\"width\":760,\"height\":300,\"caption\":\"How to use GraphQL in PHP?\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/pl\\\/bez-kategorii\\\/how-to-use-graphql-in-php\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/fr\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Jak programowo utworzy\u0107 klienta w Magento?\",\"item\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/pl\\\/magento-poradniki\\\/jak-programowo-utworzy%c4%87-klienta-w-magento\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"How to use GraphQL in PHP?\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/fr\\\/#website\",\"url\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/fr\\\/\",\"name\":\"Knowband Blog | Ecommerce Modules\",\"description\":\"Magento, Prestashop, Opencart, Shopify\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/fr\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/fr\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"pl-PL\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/fr\\\/#organization\",\"name\":\"Knowband Blog | Ecommerce Modules\",\"url\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/fr\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pl-PL\",\"@id\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/fr\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/wp-content\\\/uploads\\\/2016\\\/09\\\/cropped-knowband_logo-v2.png\",\"contentUrl\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/wp-content\\\/uploads\\\/2016\\\/09\\\/cropped-knowband_logo-v2.png\",\"width\":153,\"height\":61,\"caption\":\"Knowband Blog | Ecommerce Modules\"},\"image\":{\"@id\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/fr\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/Knowband\",\"https:\\\/\\\/x.com\\\/KnowbandPlugin\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/fr\\\/#\\\/schema\\\/person\\\/57eba27850520f4c8de3853ee8755a55\",\"name\":\"Sunny Saurabh\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pl-PL\",\"@id\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/wp-content\\\/uploads\\\/2018\\\/10\\\/IMG_20181029_123810-150x150.jpg\",\"url\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/wp-content\\\/uploads\\\/2018\\\/10\\\/IMG_20181029_123810-150x150.jpg\",\"contentUrl\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/wp-content\\\/uploads\\\/2018\\\/10\\\/IMG_20181029_123810-150x150.jpg\",\"caption\":\"Sunny Saurabh\"},\"description\":\"Sunny Saurabh is an experienced Software engineer in C# and ASP.NET as well as an expert as a PHP developer. He has also expert in database design, server maintenance and security. He has achieved this goal only in the short span of 3yrs and still looking forward to achieving more in the IT industry. He lives in New Delhi and his hobby to write the technical writeups.\",\"url\":\"https:\\\/\\\/www.knowband.com\\\/blog\\\/pl\\\/author\\\/ssaurabh\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"How to use GraphQL in PHP? - Knowband Blog | Ecommerce Modules","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.knowband.com\/blog\/pl\/bez-kategorii\/how-to-use-graphql-in-php\/","og_locale":"pl_PL","og_type":"article","og_title":"How to use GraphQL in PHP? - Knowband Blog | Ecommerce Modules","og_description":"Czy s\u0142ysza\u0142e\u015b o GraphQL? GraphQL to nowoczesny j\u0119zyk zapyta\u0144 dla API. Innymi s\u0142owy, mo\u017cemy powiedzie\u0107, \u017ce jest to nowoczesny j\u0119zyk zapyta\u0144 warstwy aplikacji. Za pomoc\u0105 GraphQL mo\u017cemy pobiera\u0107 dane z wywo\u0142a\u0144 API i dzia\u0142a on na HTTP jako REST. Zapewnia klientowi pot\u0119\u017cn\u0105 opcj\u0119, aby pyta\u0142, czego dok\u0142adnie potrzebuje, i pomaga we wzro\u015bcie lub ocenie API. [&hellip;]","og_url":"https:\/\/www.knowband.com\/blog\/pl\/bez-kategorii\/how-to-use-graphql-in-php\/","og_site_name":"Knowband Blog | Ecommerce Modules","article_publisher":"https:\/\/www.facebook.com\/Knowband","article_published_time":"2018-10-30T09:01:43+00:00","article_modified_time":"2022-07-18T12:42:09+00:00","og_image":[{"width":760,"height":300,"url":"https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2018\/10\/Main-Banner-graphql-php.png","type":"image\/png"}],"author":"Sunny Saurabh","twitter_card":"summary_large_image","twitter_creator":"@KnowbandPlugin","twitter_site":"@KnowbandPlugin","twitter_misc":{"Written by":"Sunny Saurabh","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.knowband.com\/blog\/pl\/bez-kategorii\/how-to-use-graphql-in-php\/#article","isPartOf":{"@id":"https:\/\/www.knowband.com\/blog\/pl\/bez-kategorii\/how-to-use-graphql-in-php\/"},"author":{"name":"Sunny Saurabh","@id":"https:\/\/www.knowband.com\/blog\/fr\/#\/schema\/person\/57eba27850520f4c8de3853ee8755a55"},"headline":"How to use GraphQL in PHP?","datePublished":"2018-10-30T09:01:43+00:00","dateModified":"2022-07-18T12:42:09+00:00","mainEntityOfPage":{"@id":"https:\/\/www.knowband.com\/blog\/pl\/bez-kategorii\/how-to-use-graphql-in-php\/"},"wordCount":626,"commentCount":0,"publisher":{"@id":"https:\/\/www.knowband.com\/blog\/fr\/#organization"},"image":{"@id":"https:\/\/www.knowband.com\/blog\/pl\/bez-kategorii\/how-to-use-graphql-in-php\/#primaryimage"},"thumbnailUrl":"https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2018\/10\/Main-Banner-graphql-php.png","keywords":["GraficznyQL","GraphicQL w PHP","U\u017cyj GraphQL w PHP","Webonyks"],"inLanguage":"pl-PL"},{"@type":"WebPage","@id":"https:\/\/www.knowband.com\/blog\/pl\/bez-kategorii\/how-to-use-graphql-in-php\/","url":"https:\/\/www.knowband.com\/blog\/pl\/bez-kategorii\/how-to-use-graphql-in-php\/","name":"How to use GraphQL in PHP? - Knowband Blog | Ecommerce Modules","isPartOf":{"@id":"https:\/\/www.knowband.com\/blog\/fr\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.knowband.com\/blog\/pl\/bez-kategorii\/how-to-use-graphql-in-php\/#primaryimage"},"image":{"@id":"https:\/\/www.knowband.com\/blog\/pl\/bez-kategorii\/how-to-use-graphql-in-php\/#primaryimage"},"thumbnailUrl":"https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2018\/10\/Main-Banner-graphql-php.png","datePublished":"2018-10-30T09:01:43+00:00","dateModified":"2022-07-18T12:42:09+00:00","breadcrumb":{"@id":"https:\/\/www.knowband.com\/blog\/pl\/bez-kategorii\/how-to-use-graphql-in-php\/#breadcrumb"},"inLanguage":"pl-PL","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.knowband.com\/blog\/pl\/bez-kategorii\/how-to-use-graphql-in-php\/"]}]},{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/www.knowband.com\/blog\/pl\/bez-kategorii\/how-to-use-graphql-in-php\/#primaryimage","url":"https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2018\/10\/Main-Banner-graphql-php.png","contentUrl":"https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2018\/10\/Main-Banner-graphql-php.png","width":760,"height":300,"caption":"How to use GraphQL in PHP?"},{"@type":"BreadcrumbList","@id":"https:\/\/www.knowband.com\/blog\/pl\/bez-kategorii\/how-to-use-graphql-in-php\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.knowband.com\/blog\/fr\/"},{"@type":"ListItem","position":2,"name":"Jak programowo utworzy\u0107 klienta w Magento?","item":"https:\/\/www.knowband.com\/blog\/pl\/magento-poradniki\/jak-programowo-utworzy%c4%87-klienta-w-magento\/"},{"@type":"ListItem","position":3,"name":"How to use GraphQL in PHP?"}]},{"@type":"WebSite","@id":"https:\/\/www.knowband.com\/blog\/fr\/#website","url":"https:\/\/www.knowband.com\/blog\/fr\/","name":"Knowband Blog | Ecommerce Modules","description":"Magento, Prestashop, Opencart, Shopify","publisher":{"@id":"https:\/\/www.knowband.com\/blog\/fr\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.knowband.com\/blog\/fr\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"pl-PL"},{"@type":"Organization","@id":"https:\/\/www.knowband.com\/blog\/fr\/#organization","name":"Knowband Blog | Ecommerce Modules","url":"https:\/\/www.knowband.com\/blog\/fr\/","logo":{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/www.knowband.com\/blog\/fr\/#\/schema\/logo\/image\/","url":"https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2016\/09\/cropped-knowband_logo-v2.png","contentUrl":"https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2016\/09\/cropped-knowband_logo-v2.png","width":153,"height":61,"caption":"Knowband Blog | Ecommerce Modules"},"image":{"@id":"https:\/\/www.knowband.com\/blog\/fr\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/Knowband","https:\/\/x.com\/KnowbandPlugin"]},{"@type":"Person","@id":"https:\/\/www.knowband.com\/blog\/fr\/#\/schema\/person\/57eba27850520f4c8de3853ee8755a55","name":"Sunny Saurabh","image":{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2018\/10\/IMG_20181029_123810-150x150.jpg","url":"https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2018\/10\/IMG_20181029_123810-150x150.jpg","contentUrl":"https:\/\/www.knowband.com\/blog\/wp-content\/uploads\/2018\/10\/IMG_20181029_123810-150x150.jpg","caption":"Sunny Saurabh"},"description":"Sunny Saurabh is an experienced Software engineer in C# and ASP.NET as well as an expert as a PHP developer. He has also expert in database design, server maintenance and security. He has achieved this goal only in the short span of 3yrs and still looking forward to achieving more in the IT industry. He lives in New Delhi and his hobby to write the technical writeups.","url":"https:\/\/www.knowband.com\/blog\/pl\/author\/ssaurabh\/"}]}},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/www.knowband.com\/blog\/pl\/wp-json\/wp\/v2\/posts\/817031","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.knowband.com\/blog\/pl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.knowband.com\/blog\/pl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.knowband.com\/blog\/pl\/wp-json\/wp\/v2\/users\/15"}],"replies":[{"embeddable":true,"href":"https:\/\/www.knowband.com\/blog\/pl\/wp-json\/wp\/v2\/comments?post=817031"}],"version-history":[{"count":0,"href":"https:\/\/www.knowband.com\/blog\/pl\/wp-json\/wp\/v2\/posts\/817031\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.knowband.com\/blog\/pl\/wp-json\/wp\/v2\/media\/817011"}],"wp:attachment":[{"href":"https:\/\/www.knowband.com\/blog\/pl\/wp-json\/wp\/v2\/media?parent=817031"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.knowband.com\/blog\/pl\/wp-json\/wp\/v2\/categories?post=817031"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.knowband.com\/blog\/pl\/wp-json\/wp\/v2\/tags?post=817031"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}