.code-samples.meilisearch.yaml 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309
  1. # This code-samples file is used by the MeiliSearch documentation
  2. # Every example written here will be automatically fetched by
  3. # the documentation on build
  4. # You can read more on https://github.com/meilisearch/documentation/tree/master/.vuepress/code-samples
  5. ---
  6. get_one_index_1: |-
  7. $client->index('movies')->fetchRawInfo();
  8. list_all_indexes_1: |-
  9. $client->getAllIndexes();
  10. create_an_index_1: |-
  11. $client->createIndex('movies', ['primaryKey' => 'movie_id']);
  12. update_an_index_1: |-
  13. $client->updateIndex('movies', ['primaryKey' => 'movie_id']);
  14. // OR
  15. $client->index('movies')->update(['primaryKey' => 'movie_id']);
  16. delete_an_index_1: |-
  17. $client->deleteIndex('movies');
  18. // OR
  19. $client->index('movies')->delete();
  20. get_one_document_1: |-
  21. $client->index('movies')->getDocument(25684);
  22. get_documents_1: |-
  23. $client->index('movies')->getDocuments(['limit' => 2]);
  24. add_or_replace_documents_1: |-
  25. $client->index('movies')->addDocuments([
  26. [
  27. 'id' => 287947
  28. 'title' => 'Shazam',
  29. 'poster' => 'https://image.tmdb.org/t/p/w1280/xnopI5Xtky18MPhK40cZAGAOVeV.jpg',
  30. 'overview' => 'A boy is given the ability to become an adult superhero in times of need with a single magic word.',
  31. 'release_date' => '2019-03-23'
  32. ]
  33. ]);
  34. add_or_update_documents_1: |-
  35. $client->index('movies')->updateDocuments([
  36. [
  37. 'id' => 287947
  38. 'title' => 'Shazam ⚡️',
  39. 'genres' => 'comedy'
  40. ]
  41. ]);
  42. delete_all_documents_1: |-
  43. $client->index('movies')->deleteAllDocuments();
  44. delete_one_document_1: |-
  45. $client->index('movies')->deleteDocument(25684);
  46. delete_documents_1: |-
  47. $client->index('movies')->deleteDocuments([23488, 153738, 437035, 363869]);
  48. search_1: |-
  49. // Do a search
  50. $searchResults = $client->index('movies')->search('american ninja');
  51. // Get results in an Array using a getter
  52. $hits = $searchResults->getHits();
  53. // Get the decoded response of MeiliSearch, see response below
  54. $response = $searchResults->getRaw();
  55. get_update_1: |-
  56. $client->index('movies')->getUpdateStatus(1);
  57. get_all_updates_1: |-
  58. $client->index('movies')->getAllUpdateStatus();
  59. get_keys_1: |-
  60. $client->getKeys();
  61. get_settings_1: |-
  62. $client->index('movies')->getSettings();
  63. update_settings_1: |-
  64. $client->index('movies')->updateSettings([
  65. 'rankingRules' => [
  66. 'typo',
  67. 'words',
  68. 'proximity',
  69. 'attribute',
  70. 'wordsPosition',
  71. 'exactness',
  72. 'desc(release_date)',
  73. 'desc(rank)'
  74. ],
  75. 'distinctAttribute' => 'movie_id',
  76. 'searchableAttributes' => [
  77. 'title',
  78. 'description',
  79. 'genre'
  80. ],
  81. 'displayedAttributes' => [
  82. 'title',
  83. 'description',
  84. 'genre',
  85. 'release_date'
  86. ],
  87. 'stopWords' => [
  88. 'the',
  89. 'a',
  90. 'an'
  91. ],
  92. 'synonyms' => [
  93. 'wolverine': ['xmen', 'logan'],
  94. 'logan': ['wolverine']
  95. ]
  96. ]);
  97. reset_settings_1: |-
  98. $client->index('movies')->resetSettings();
  99. get_synonyms_1: |-
  100. $client->index('movies')->getSynonyms();
  101. update_synonyms_1: |-
  102. $client->index('movies')->updateSynonyms([
  103. 'wolverine': ['xmen', 'logan'],
  104. 'logan': ['wolverine', 'xmen'],
  105. 'wow': ['world of warcraft']
  106. ]);
  107. reset_synonyms_1: |-
  108. $client->index('movies')->resetSynonyms();
  109. get_stop_words_1: |-
  110. $client->index('movies')->getStopWords();
  111. update_stop_words_1: |-
  112. $client->index('movies')->updateStopWords(['the', 'of', 'to']);
  113. reset_stop_words_1: |-
  114. $client->index('movies')->resetStopWords();
  115. get_ranking_rules_1: |-
  116. $client->index('movies')->getRankingRules();
  117. update_ranking_rules_1: |-
  118. $client->index('movies')->updateRankingRules([
  119. 'typo',
  120. 'words',
  121. 'proximity',
  122. 'attribute',
  123. 'wordsPosition',
  124. 'exactness',
  125. 'asc(release_date)',
  126. 'desc(rank)'
  127. ]);
  128. reset_ranking_rules_1: |-
  129. $client->index('movies')->resetRankingRules();
  130. get_distinct_attribute_1: |-
  131. $client->index('movies')->getDistinctAttribute();
  132. update_distinct_attribute_1: |-
  133. $client->index('movies')->updateDistinctAttribute('movie_id');
  134. reset_distinct_attribute_1: |-
  135. $client->index('movies')->resetDistinctAttribute();
  136. get_searchable_attributes_1: |-
  137. $client->index('movies')->getSearchableAttributes();
  138. update_searchable_attributes_1: |-
  139. $client->index('movies')->updateSearchableAttributes([
  140. 'title',
  141. 'description',
  142. 'genre'
  143. ]);
  144. reset_searchable_attributes_1: |-
  145. $client->index('movies')->resetSearchableAttributes();
  146. get_attributes_for_faceting_1: |-
  147. $client->index('movies')->getAttributesForFaceting();
  148. update_attributes_for_faceting_1: |-
  149. $client->index('movies')->updateAttributesForFaceting([
  150. 'genres',
  151. 'director'
  152. ]);
  153. reset_attributes_for_faceting_1: |-
  154. $client->index('movies')->resetAttributesForFaceting();
  155. get_displayed_attributes_1: |-
  156. $client->index('movies')->getDisplayedAttributes();
  157. update_displayed_attributes_1: |-
  158. $client->index('movies')->updateDisplayedAttributes([
  159. 'title',
  160. 'description',
  161. 'genre',
  162. 'release_date'
  163. ]);
  164. reset_displayed_attributes_1: |-
  165. $client->index('movies')->resetDisplayedAttributes();
  166. get_index_stats_1: |-
  167. $client->index('movies')->stats();
  168. get_indexes_stats_1: |-
  169. $client->stats();
  170. get_health_1: |-
  171. $client->health();
  172. get_version_1: |-
  173. $client->version();
  174. distinct_attribute_guide_1: |-
  175. $client->index('jackets')->updateDistinctAttribute('product_id');
  176. field_properties_guide_searchable_1: |-
  177. $client->index('movies')->updateSearchableAttributes([
  178. 'title',
  179. 'description',
  180. 'genre'
  181. ]);
  182. field_properties_guide_displayed_1: |-
  183. $client->index('movies')->updateDisplayedAttributes([
  184. 'title',
  185. 'description',
  186. 'genre',
  187. 'release_date'
  188. ]);
  189. filtering_guide_1: |-
  190. $client->index('movies')->search('Avengers', ['filters' => 'release_date > 795484800']);
  191. filtering_guide_2: |-
  192. $client->index('movies')->search('Avengers', ['filters' => 'release_date > 795484800 AND (director = "Tim Burton" OR director = "Christopher Nolan")']);
  193. filtering_guide_3: |-
  194. $client->index('movies')->search('horror', ['filters' => 'director = "Jordan Peele"']);
  195. filtering_guide_4: |-
  196. $client->index('movies')->search('Planet of the Apes', ['filters' => 'rating >= 3 AND (NOT director = "Tim Burton")']);
  197. search_parameter_guide_query_1: |-
  198. $client->index('movies')->search('shifu');
  199. search_parameter_guide_offset_1: |-
  200. $client->index('movies')->search('shifu', ['offset' => 1]);
  201. search_parameter_guide_limit_1: |-
  202. $client->index('movies')->search('shifu', ['limit' => 1]);
  203. search_parameter_guide_retrieve_1: |-
  204. $client->index('movies')->search('shifu', ['attributesToRetrieve' => ['overview', 'title']]);
  205. search_parameter_guide_crop_1: |-
  206. $client->index('movies')->search('shifu', ['attributesToCrop' => ['overview'], 'cropLength' => 10]);
  207. search_parameter_guide_highlight_1: |-
  208. $client->index('movies')->search('shifu', ['attributesToHighlight' => ['overview']]);
  209. search_parameter_guide_filter_1: |-
  210. $client->index('movies')->search('n', ['filters' => 'title = Nightshift']);
  211. search_parameter_guide_filter_2: |-
  212. $client->index('movies')->search('shifu', ['filters' => 'title="Kung Fu Panda"']);
  213. search_parameter_guide_matches_1: |-
  214. $client->index('movies')->search('shifu', ['attributesToHighlight' => ['overview'], 'matches' => true]);
  215. settings_guide_synonyms_1: |-
  216. $client->index('tops')->updateSynonyms(['sweater' => ['jumper'], 'jumper' => ['sweater']]);
  217. settings_guide_stop_words_1: |-
  218. $client->index('movies')->updateStopWords(['the', 'a', 'an']);
  219. settings_guide_ranking_rules_1: |-
  220. $client->index('movies')->updateRankingRules([
  221. 'typo',
  222. 'words',
  223. 'proximity',
  224. 'attribute',
  225. 'wordsPosition',
  226. 'exactness',
  227. 'asc(release_date)',
  228. 'desc(rank)'
  229. ]);
  230. settings_guide_distinct_1: |-
  231. $client->index('jackets')->updateDistinctAttribute('product_id');
  232. settings_guide_searchable_1: |-
  233. $client->index('movies')->updateSearchableAttributes([
  234. 'title',
  235. 'description',
  236. 'genre'
  237. ]);
  238. settings_guide_displayed_1: |-
  239. $client->index('movies')->updateDisplayedAttributes([
  240. 'title',
  241. 'description',
  242. 'genre',
  243. 'release_date'
  244. ]);
  245. add_movies_json_1: |-
  246. $moviesJson = file_get_contents('movies.json');
  247. $movies = json_decode($moviesJson);
  248. $client->index('movies')->addDocuments($movies)
  249. documents_guide_add_movie_1: |-
  250. $client->index('movies')->addDocuments([['movie_id' => '123sq178', 'title' => 'Amelie Poulain']]);
  251. search_guide_1: |-
  252. $client->index('movies')->search('shifu', ['limit' => 5, 'offset' => 10]);
  253. search_guide_2: |-
  254. $client->index('movies')->search('Avengers', ['filters' => 'release_date > 795484800']);
  255. getting_started_add_documents_md: |-
  256. Using `meilisearch-php` with the Guzzle HTTP client:
  257. ```bash
  258. composer require meilisearch/meilisearch-php \
  259. guzzlehttp/guzzle \
  260. http-interop/http-factory-guzzle:^1.0
  261. ```
  262. ```php
  263. <?php
  264. require_once __DIR__ . '/vendor/autoload.php';
  265. use MeiliSearch\Client;
  266. $client = new Client('http://127.0.0.1:7700');
  267. $movies_json = file_get_contents('movies.json');
  268. $movies = json_decode($movies_json);
  269. $client->index('movies')->addDocuments($movies);
  270. ```
  271. [About this SDK](https://github.com/meilisearch/meilisearch-php/)
  272. getting_started_search_md: |-
  273. ```php
  274. $index->search('botman');
  275. ```
  276. [About this SDK](https://github.com/meilisearch/meilisearch-php/)
  277. faceted_search_update_settings_1: |-
  278. $client->index('movies')->updateAttributesForFaceting(['director', 'genres']);
  279. faceted_search_facet_filters_1: |-
  280. $client->index('movies')->search('thriller', ['facetFilters' => [['genres:Horror', 'genres:Mystery']], 'director' => "Jordan Peele"']);
  281. faceted_search_facets_distribution_1: |-
  282. $client->index('movies')->search('Batman', ['facetsDistribution' => ['genres']]);
  283. faceted_search_walkthrough_attributes_for_faceting_1: |-
  284. $client->index('movies')->updateAttributesForFaceting([
  285. 'director',
  286. 'producer',
  287. 'genres',
  288. 'production_companies'
  289. ]);
  290. faceted_search_walkthrough_facet_filters_1: |-
  291. $client->index('movies')->search('thriller', ['facetFilters' => [['genres:Horror', 'genres:Mystery']], 'director' => "Jordan Peele"]);
  292. faceted_search_walkthrough_facets_distribution_1: |-
  293. $client->index('movies')->search('Batman', ['facetsDistribution' => ['genres']);
  294. post_dump_1: |-
  295. $client->createDump();
  296. get_dump_status_1: |-
  297. $client->getDumpStatus('20201101-110357260');