AipImageSearch.php 36 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931
  1. <?php
  2. /*
  3. * Copyright (c) 2017 Baidu.com, Inc. All Rights Reserved
  4. *
  5. * Licensed under the Apache License, Version 2.0 (the "License"); you may not
  6. * use this file except in compliance with the License. You may obtain a copy of
  7. * the License at
  8. *
  9. * Http://www.apache.org/licenses/LICENSE-2.0
  10. *
  11. * Unless required by applicable law or agreed to in writing, software
  12. * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  13. * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
  14. * License for the specific language governing permissions and limitations under
  15. * the License.
  16. */
  17. require_once 'lib/AipBase.php';
  18. class AipImageSearch extends AipBase {
  19. /**
  20. * 相同图检索—入库 same_hq_add api url
  21. * @var string
  22. */
  23. private $sameHqAddUrl = 'https://aip.baidubce.com/rest/2.0/realtime_search/same_hq/add';
  24. /**
  25. * 相同图检索—检索 same_hq_search api url
  26. * @var string
  27. */
  28. private $sameHqSearchUrl = 'https://aip.baidubce.com/rest/2.0/realtime_search/same_hq/search';
  29. /**
  30. * 相同图检索—更新 same_hq_update api url
  31. * @var string
  32. */
  33. private $sameHqUpdateUrl = 'https://aip.baidubce.com/rest/2.0/realtime_search/same_hq/update';
  34. /**
  35. * 相同图检索—删除 same_hq_delete api url
  36. * @var string
  37. */
  38. private $sameHqDeleteUrl = 'https://aip.baidubce.com/rest/2.0/realtime_search/same_hq/delete';
  39. /**
  40. * 相似图检索—入库 similar_add api url
  41. * @var string
  42. */
  43. private $similarAddUrl = 'https://aip.baidubce.com/rest/2.0/image-classify/v1/realtime_search/similar/add';
  44. /**
  45. * 相似图检索—检索 similar_search api url
  46. * @var string
  47. */
  48. private $similarSearchUrl = 'https://aip.baidubce.com/rest/2.0/image-classify/v1/realtime_search/similar/search';
  49. /**
  50. * 相似图检索—更新 similar_update api url
  51. * @var string
  52. */
  53. private $similarUpdateUrl = 'https://aip.baidubce.com/rest/2.0/image-classify/v1/realtime_search/similar/update';
  54. /**
  55. * 相似图检索—删除 similar_delete api url
  56. * @var string
  57. */
  58. private $similarDeleteUrl = 'https://aip.baidubce.com/rest/2.0/image-classify/v1/realtime_search/similar/delete';
  59. /**
  60. * 商品检索—入库 product_add api url
  61. * @var string
  62. */
  63. private $productAddUrl = 'https://aip.baidubce.com/rest/2.0/image-classify/v1/realtime_search/product/add';
  64. /**
  65. * 商品检索—检索 product_search api url
  66. * @var string
  67. */
  68. private $productSearchUrl = 'https://aip.baidubce.com/rest/2.0/image-classify/v1/realtime_search/product/search';
  69. /**
  70. * 商品检索—更新 product_update api url
  71. * @var string
  72. */
  73. private $productUpdateUrl = 'https://aip.baidubce.com/rest/2.0/image-classify/v1/realtime_search/product/update';
  74. /**
  75. * 商品检索—删除 product_delete api url
  76. * @var string
  77. */
  78. private $productDeleteUrl = 'https://aip.baidubce.com/rest/2.0/image-classify/v1/realtime_search/product/delete';
  79. /**
  80. * 绘本图片搜索—入库-image
  81. * @var string
  82. */
  83. private $picturebookAdd = "https://aip.baidubce.com/rest/2.0/imagesearch/v1/realtime_search/picturebook/add";
  84. /**
  85. * 绘本图片搜索—入库-检索
  86. * @var string
  87. */
  88. private $picturebookSearch = "https://aip.baidubce.com/rest/2.0/imagesearch/v1/realtime_search/picturebook/search";
  89. /**
  90. * 绘本图片搜索—入库-删除
  91. * @var string
  92. */
  93. private $picturebookDelete = "https://aip.baidubce.com/rest/2.0/imagesearch/v1/realtime_search/picturebook/delete";
  94. /**
  95. * 绘本图片搜索—入库-更新
  96. * @var string
  97. */
  98. private $picturebookUpdate = "https://aip.baidubce.com/rest/2.0/imagesearch/v1/realtime_search/picturebook/update";
  99. /**
  100. * 相同图检索—入库接口
  101. *
  102. * @param string $image - 图像数据,base64编码,要求base64编码后大小不超过4M,最短边至少15px,最长边最大4096px,支持jpg/png/bmp格式
  103. * @param string $brief - 检索时原样带回,最长256B。
  104. * @param array $options - 可选参数对象,key: value都为string类型
  105. * @description options列表:
  106. * tags 1 - 65535范围内的整数,tag间以逗号分隔,最多2个tag。样例:"100,11" ;检索时可圈定分类维度进行检索
  107. * @return array
  108. */
  109. public function sameHqAdd($image, $brief, $options=array()){
  110. $data = array();
  111. $data['image'] = base64_encode($image);
  112. $data['brief'] = $brief;
  113. $data = array_merge($data, $options);
  114. return $this->request($this->sameHqAddUrl, $data);
  115. }
  116. /**
  117. * 相同图检索—入库接口
  118. *
  119. * @param string $url - 图片完整URL,URL长度不超过1024字节,URL对应的图片base64编码后大小不超过4M,最短边至少15px,最长边最大4096px,支持jpg/png/bmp格式,当image字段存在时url字段失效
  120. * @param string $brief - 检索时原样带回,最长256B。
  121. * @param array $options - 可选参数对象,key: value都为string类型
  122. * @description options列表:
  123. * tags 1 - 65535范围内的整数,tag间以逗号分隔,最多2个tag。样例:"100,11" ;检索时可圈定分类维度进行检索
  124. * @return array
  125. */
  126. public function sameHqAddUrl($url, $brief, $options=array()){
  127. $data = array();
  128. $data['url'] = $url;
  129. $data['brief'] = $brief;
  130. $data = array_merge($data, $options);
  131. return $this->request($this->sameHqAddUrl, $data);
  132. }
  133. /**
  134. * 相同图检索—检索接口
  135. *
  136. * @param string $image - 图像数据,base64编码,要求base64编码后大小不超过4M,最短边至少15px,最长边最大4096px,支持jpg/png/bmp格式
  137. * @param array $options - 可选参数对象,key: value都为string类型
  138. * @description options列表:
  139. * tags 1 - 65535范围内的整数,tag间以逗号分隔,最多2个tag。样例:"100,11" ;检索时可圈定分类维度进行检索
  140. * tag_logic 检索时tag之间的逻辑, 0:逻辑and,1:逻辑or
  141. * pn 分页功能,起始位置,例:0。未指定分页时,默认返回前300个结果;接口返回数量最大限制1000条,例如:起始位置为900,截取条数500条,接口也只返回第900 - 1000条的结果,共计100条
  142. * rn 分页功能,截取条数,例:250
  143. * @return array
  144. */
  145. public function sameHqSearch($image, $options=array()){
  146. $data = array();
  147. $data['image'] = base64_encode($image);
  148. $data = array_merge($data, $options);
  149. return $this->request($this->sameHqSearchUrl, $data);
  150. }
  151. /**
  152. * 相同图检索—检索接口
  153. *
  154. * @param string $url - 图片完整URL,URL长度不超过1024字节,URL对应的图片base64编码后大小不超过4M,最短边至少15px,最长边最大4096px,支持jpg/png/bmp格式,当image字段存在时url字段失效
  155. * @param array $options - 可选参数对象,key: value都为string类型
  156. * @description options列表:
  157. * tags 1 - 65535范围内的整数,tag间以逗号分隔,最多2个tag。样例:"100,11" ;检索时可圈定分类维度进行检索
  158. * tag_logic 检索时tag之间的逻辑, 0:逻辑and,1:逻辑or
  159. * pn 分页功能,起始位置,例:0。未指定分页时,默认返回前300个结果;接口返回数量最大限制1000条,例如:起始位置为900,截取条数500条,接口也只返回第900 - 1000条的结果,共计100条
  160. * rn 分页功能,截取条数,例:250
  161. * @return array
  162. */
  163. public function sameHqSearchUrl($url, $options=array()){
  164. $data = array();
  165. $data['url'] = $url;
  166. $data = array_merge($data, $options);
  167. return $this->request($this->sameHqSearchUrl, $data);
  168. }
  169. /**
  170. * 相同图检索—更新接口
  171. *
  172. * @param string $image - 图像数据,base64编码,要求base64编码后大小不超过4M,最短边至少15px,最长边最大4096px,支持jpg/png/bmp格式
  173. * @param array $options - 可选参数对象,key: value都为string类型
  174. * @description options列表:
  175. * brief 更新的摘要信息,最长256B。样例:{"name":"周杰伦", "id":"666"}
  176. * tags 1 - 65535范围内的整数,tag间以逗号分隔,最多2个tag。样例:"100,11" ;检索时可圈定分类维度进行检索
  177. * @return array
  178. */
  179. public function sameHqUpdate($image, $options=array()){
  180. $data = array();
  181. $data['image'] = base64_encode($image);
  182. $data = array_merge($data, $options);
  183. return $this->request($this->sameHqUpdateUrl, $data);
  184. }
  185. /**
  186. * 相同图检索—更新接口
  187. *
  188. * @param string $url - 图片完整URL,URL长度不超过1024字节,URL对应的图片base64编码后大小不超过4M,最短边至少15px,最长边最大4096px,支持jpg/png/bmp格式,当image字段存在时url字段失效
  189. * @param array $options - 可选参数对象,key: value都为string类型
  190. * @description options列表:
  191. * brief 更新的摘要信息,最长256B。样例:{"name":"周杰伦", "id":"666"}
  192. * tags 1 - 65535范围内的整数,tag间以逗号分隔,最多2个tag。样例:"100,11" ;检索时可圈定分类维度进行检索
  193. * @return array
  194. */
  195. public function sameHqUpdateUrl($url, $options=array()){
  196. $data = array();
  197. $data['url'] = $url;
  198. $data = array_merge($data, $options);
  199. return $this->request($this->sameHqUpdateUrl, $data);
  200. }
  201. /**
  202. * 相同图检索—更新接口
  203. *
  204. * @param string $contSign - 图片签名
  205. * @param array $options - 可选参数对象,key: value都为string类型
  206. * @description options列表:
  207. * brief 更新的摘要信息,最长256B。样例:{"name":"周杰伦", "id":"666"}
  208. * tags 1 - 65535范围内的整数,tag间以逗号分隔,最多2个tag。样例:"100,11" ;检索时可圈定分类维度进行检索
  209. * @return array
  210. */
  211. public function sameHqUpdateContSign($contSign, $options=array()){
  212. $data = array();
  213. $data['cont_sign'] = $contSign;
  214. $data = array_merge($data, $options);
  215. return $this->request($this->sameHqUpdateUrl, $data);
  216. }
  217. /**
  218. * 相同图检索—删除接口
  219. *
  220. * @param string $image - 图像数据,base64编码,要求base64编码后大小不超过4M,最短边至少15px,最长边最大4096px,支持jpg/png/bmp格式
  221. * @param array $options - 可选参数对象,key: value都为string类型
  222. * @description options列表:
  223. * @return array
  224. */
  225. public function sameHqDeleteByImage($image, $options=array()){
  226. $data = array();
  227. $data['image'] = base64_encode($image);
  228. $data = array_merge($data, $options);
  229. return $this->request($this->sameHqDeleteUrl, $data);
  230. }
  231. /**
  232. * 相同图检索—删除接口
  233. *
  234. * @param string $url - 图片完整URL,URL长度不超过1024字节,URL对应的图片base64编码后大小不超过4M,最短边至少15px,最长边最大4096px,支持jpg/png/bmp格式,当image字段存在时url字段失效
  235. * @param array $options - 可选参数对象,key: value都为string类型
  236. * @description options列表:
  237. * @return array
  238. */
  239. public function sameHqDeleteByUrl($url, $options=array()){
  240. $data = array();
  241. $data['url'] = $url;
  242. $data = array_merge($data, $options);
  243. return $this->request($this->sameHqDeleteUrl, $data);
  244. }
  245. /**
  246. * 相同图检索—删除接口
  247. *
  248. * @param string $contSign - 图片签名
  249. * @param array $options - 可选参数对象,key: value都为string类型
  250. * @description options列表:
  251. * @return array
  252. */
  253. public function sameHqDeleteBySign($contSign, $options=array()){
  254. $data = array();
  255. $data['cont_sign'] = $contSign;
  256. $data = array_merge($data, $options);
  257. return $this->request($this->sameHqDeleteUrl, $data);
  258. }
  259. /**
  260. * 相似图检索—入库接口
  261. *
  262. * @param string $image - 图像数据,base64编码,要求base64编码后大小不超过4M,最短边至少15px,最长边最大4096px,支持jpg/png/bmp格式
  263. * @param string $brief - 检索时原样带回,最长256B。
  264. * @param array $options - 可选参数对象,key: value都为string类型
  265. * @description options列表:
  266. * tags 1 - 65535范围内的整数,tag间以逗号分隔,最多2个tag。样例:"100,11" ;检索时可圈定分类维度进行检索
  267. * @return array
  268. */
  269. public function similarAdd($image, $brief, $options=array()){
  270. $data = array();
  271. $data['image'] = base64_encode($image);
  272. $data['brief'] = $brief;
  273. $data = array_merge($data, $options);
  274. return $this->request($this->similarAddUrl, $data);
  275. }
  276. /**
  277. * 相似图检索—入库接口
  278. *
  279. * @param string $url - 图片完整URL,URL长度不超过1024字节,URL对应的图片base64编码后大小不超过4M,最短边至少15px,最长边最大4096px,支持jpg/png/bmp格式,当image字段存在时url字段失效
  280. * @param string $brief - 检索时原样带回,最长256B。
  281. * @param array $options - 可选参数对象,key: value都为string类型
  282. * @description options列表:
  283. * tags 1 - 65535范围内的整数,tag间以逗号分隔,最多2个tag。样例:"100,11" ;检索时可圈定分类维度进行检索
  284. * @return array
  285. */
  286. public function similarAddUrl($url, $brief, $options=array()){
  287. $data = array();
  288. $data['url'] = $url;
  289. $data['brief'] = $brief;
  290. $data = array_merge($data, $options);
  291. return $this->request($this->similarAddUrl, $data);
  292. }
  293. /**
  294. * 相似图检索—检索接口
  295. *
  296. * @param string $image - 图像数据,base64编码,要求base64编码后大小不超过4M,最短边至少15px,最长边最大4096px,支持jpg/png/bmp格式
  297. * @param array $options - 可选参数对象,key: value都为string类型
  298. * @description options列表:
  299. * tags 1 - 65535范围内的整数,tag间以逗号分隔,最多2个tag。样例:"100,11" ;检索时可圈定分类维度进行检索
  300. * tag_logic 检索时tag之间的逻辑, 0:逻辑and,1:逻辑or
  301. * pn 分页功能,起始位置,例:0。未指定分页时,默认返回前300个结果;接口返回数量最大限制1000条,例如:起始位置为900,截取条数500条,接口也只返回第900 - 1000条的结果,共计100条
  302. * rn 分页功能,截取条数,例:250
  303. * @return array
  304. */
  305. public function similarSearch($image, $options=array()){
  306. $data = array();
  307. $data['image'] = base64_encode($image);
  308. $data = array_merge($data, $options);
  309. return $this->request($this->similarSearchUrl, $data);
  310. }
  311. /**
  312. * 相似图检索—检索接口
  313. *
  314. * @param string $url - 图片完整URL,URL长度不超过1024字节,URL对应的图片base64编码后大小不超过4M,最短边至少15px,最长边最大4096px,支持jpg/png/bmp格式,当image字段存在时url字段失效
  315. * @param array $options - 可选参数对象,key: value都为string类型
  316. * @description options列表:
  317. * tags 1 - 65535范围内的整数,tag间以逗号分隔,最多2个tag。样例:"100,11" ;检索时可圈定分类维度进行检索
  318. * tag_logic 检索时tag之间的逻辑, 0:逻辑and,1:逻辑or
  319. * pn 分页功能,起始位置,例:0。未指定分页时,默认返回前300个结果;接口返回数量最大限制1000条,例如:起始位置为900,截取条数500条,接口也只返回第900 - 1000条的结果,共计100条
  320. * rn 分页功能,截取条数,例:250
  321. * @return array
  322. */
  323. public function similarSearchUrl($url, $options=array()){
  324. $data = array();
  325. $data['url'] = $url;
  326. $data = array_merge($data, $options);
  327. return $this->request($this->similarSearchUrl, $data);
  328. }
  329. /**
  330. * 相似图检索—更新接口
  331. *
  332. * @param string $image - 图像数据,base64编码,要求base64编码后大小不超过4M,最短边至少15px,最长边最大4096px,支持jpg/png/bmp格式
  333. * @param array $options - 可选参数对象,key: value都为string类型
  334. * @description options列表:
  335. * brief 更新的摘要信息,最长256B。样例:{"name":"周杰伦", "id":"666"}
  336. * tags 1 - 65535范围内的整数,tag间以逗号分隔,最多2个tag。样例:"100,11" ;检索时可圈定分类维度进行检索
  337. * @return array
  338. */
  339. public function similarUpdate($image, $options=array()){
  340. $data = array();
  341. $data['image'] = base64_encode($image);
  342. $data = array_merge($data, $options);
  343. return $this->request($this->similarUpdateUrl, $data);
  344. }
  345. /**
  346. * 相似图检索—更新接口
  347. *
  348. * @param string $url - 图片完整URL,URL长度不超过1024字节,URL对应的图片base64编码后大小不超过4M,最短边至少15px,最长边最大4096px,支持jpg/png/bmp格式,当image字段存在时url字段失效
  349. * @param array $options - 可选参数对象,key: value都为string类型
  350. * @description options列表:
  351. * brief 更新的摘要信息,最长256B。样例:{"name":"周杰伦", "id":"666"}
  352. * tags 1 - 65535范围内的整数,tag间以逗号分隔,最多2个tag。样例:"100,11" ;检索时可圈定分类维度进行检索
  353. * @return array
  354. */
  355. public function similarUpdateUrl($url, $options=array()){
  356. $data = array();
  357. $data['url'] = $url;
  358. $data = array_merge($data, $options);
  359. return $this->request($this->similarUpdateUrl, $data);
  360. }
  361. /**
  362. * 相似图检索—更新接口
  363. *
  364. * @param string $contSign - 图片签名
  365. * @param array $options - 可选参数对象,key: value都为string类型
  366. * @description options列表:
  367. * brief 更新的摘要信息,最长256B。样例:{"name":"周杰伦", "id":"666"}
  368. * tags 1 - 65535范围内的整数,tag间以逗号分隔,最多2个tag。样例:"100,11" ;检索时可圈定分类维度进行检索
  369. * @return array
  370. */
  371. public function similarUpdateContSign($contSign, $options=array()){
  372. $data = array();
  373. $data['cont_sign'] = $contSign;
  374. $data = array_merge($data, $options);
  375. return $this->request($this->similarUpdateUrl, $data);
  376. }
  377. /**
  378. * 相似图检索—删除接口
  379. *
  380. * @param string $image - 图像数据,base64编码,要求base64编码后大小不超过4M,最短边至少15px,最长边最大4096px,支持jpg/png/bmp格式
  381. * @param array $options - 可选参数对象,key: value都为string类型
  382. * @description options列表:
  383. * @return array
  384. */
  385. public function similarDeleteByImage($image, $options=array()){
  386. $data = array();
  387. $data['image'] = base64_encode($image);
  388. $data = array_merge($data, $options);
  389. return $this->request($this->similarDeleteUrl, $data);
  390. }
  391. /**
  392. * 相似图检索—删除接口
  393. *
  394. * @param string $url - 图片完整URL,URL长度不超过1024字节,URL对应的图片base64编码后大小不超过4M,最短边至少15px,最长边最大4096px,支持jpg/png/bmp格式,当image字段存在时url字段失效
  395. * @param array $options - 可选参数对象,key: value都为string类型
  396. * @description options列表:
  397. * @return array
  398. */
  399. public function similarDeleteByUrl($url, $options=array()){
  400. $data = array();
  401. $data['url'] = $url;
  402. $data = array_merge($data, $options);
  403. return $this->request($this->similarDeleteUrl, $data);
  404. }
  405. /**
  406. * 相似图检索—删除接口
  407. *
  408. * @param string $contSign - 图片签名
  409. * @param array $options - 可选参数对象,key: value都为string类型
  410. * @description options列表:
  411. * @return array
  412. */
  413. public function similarDeleteBySign($contSign, $options=array()){
  414. $data = array();
  415. $data['cont_sign'] = $contSign;
  416. $data = array_merge($data, $options);
  417. return $this->request($this->similarDeleteUrl, $data);
  418. }
  419. /**
  420. * 商品检索—入库接口
  421. *
  422. * @param string $image - 图像数据,base64编码,要求base64编码后大小不超过4M,最短边至少15px,最长边最大4096px,支持jpg/png/bmp格式
  423. * @param string $brief - 检索时原样带回,最长256B。**请注意,检索接口不返回原图,仅反馈当前填写的brief信息,所以调用该入库接口时,brief信息请尽量填写可关联至本地图库的图片id或者图片url、图片名称等信息**
  424. * @param array $options - 可选参数对象,key: value都为string类型
  425. * @description options列表:
  426. * class_id1 商品分类维度1,支持1-65535范围内的整数。检索时可圈定该分类维度进行检索
  427. * class_id2 商品分类维度1,支持1-65535范围内的整数。检索时可圈定该分类维度进行检索
  428. * @return array
  429. */
  430. public function productAdd($image, $brief, $options=array()){
  431. $data = array();
  432. $data['image'] = base64_encode($image);
  433. $data['brief'] = $brief;
  434. $data = array_merge($data, $options);
  435. return $this->request($this->productAddUrl, $data);
  436. }
  437. /**
  438. * 商品检索—入库接口
  439. *
  440. * @param string $url - 图片完整URL,URL长度不超过1024字节,URL对应的图片base64编码后大小不超过4M,最短边至少15px,最长边最大4096px,支持jpg/png/bmp格式,当image字段存在时url字段失效
  441. * @param string $brief - 检索时原样带回,最长256B。**请注意,检索接口不返回原图,仅反馈当前填写的brief信息,所以调用该入库接口时,brief信息请尽量填写可关联至本地图库的图片id或者图片url、图片名称等信息**
  442. * @param array $options - 可选参数对象,key: value都为string类型
  443. * @description options列表:
  444. * class_id1 商品分类维度1,支持1-65535范围内的整数。检索时可圈定该分类维度进行检索
  445. * class_id2 商品分类维度1,支持1-65535范围内的整数。检索时可圈定该分类维度进行检索
  446. * @return array
  447. */
  448. public function productAddUrl($url, $brief, $options=array()){
  449. $data = array();
  450. $data['url'] = $url;
  451. $data['brief'] = $brief;
  452. $data = array_merge($data, $options);
  453. return $this->request($this->productAddUrl, $data);
  454. }
  455. /**
  456. * 商品检索—检索接口
  457. *
  458. * @param string $image - 图像数据,base64编码,要求base64编码后大小不超过4M,最短边至少15px,最长边最大4096px,支持jpg/png/bmp格式
  459. * @param array $options - 可选参数对象,key: value都为string类型
  460. * @description options列表:
  461. * class_id1 商品分类维度1,支持1-65535范围内的整数。检索时可圈定该分类维度进行检索
  462. * class_id2 商品分类维度1,支持1-65535范围内的整数。检索时可圈定该分类维度进行检索
  463. * pn 分页功能,起始位置,例:0。未指定分页时,默认返回前300个结果;接口返回数量最大限制1000条,例如:起始位置为900,截取条数500条,接口也只返回第900 - 1000条的结果,共计100条
  464. * rn 分页功能,截取条数,例:250
  465. * @return array
  466. */
  467. public function productSearch($image, $options=array()){
  468. $data = array();
  469. $data['image'] = base64_encode($image);
  470. $data = array_merge($data, $options);
  471. return $this->request($this->productSearchUrl, $data);
  472. }
  473. /**
  474. * 商品检索—检索接口
  475. *
  476. * @param string $url - 图片完整URL,URL长度不超过1024字节,URL对应的图片base64编码后大小不超过4M,最短边至少15px,最长边最大4096px,支持jpg/png/bmp格式,当image字段存在时url字段失效
  477. * @param array $options - 可选参数对象,key: value都为string类型
  478. * @description options列表:
  479. * class_id1 商品分类维度1,支持1-65535范围内的整数。检索时可圈定该分类维度进行检索
  480. * class_id2 商品分类维度1,支持1-65535范围内的整数。检索时可圈定该分类维度进行检索
  481. * pn 分页功能,起始位置,例:0。未指定分页时,默认返回前300个结果;接口返回数量最大限制1000条,例如:起始位置为900,截取条数500条,接口也只返回第900 - 1000条的结果,共计100条
  482. * rn 分页功能,截取条数,例:250
  483. * @return array
  484. */
  485. public function productSearchUrl($url, $options=array()){
  486. $data = array();
  487. $data['url'] = $url;
  488. $data = array_merge($data, $options);
  489. return $this->request($this->productSearchUrl, $data);
  490. }
  491. /**
  492. * 商品检索—更新接口
  493. *
  494. * @param string $image - 图像数据,base64编码,要求base64编码后大小不超过4M,最短边至少15px,最长边最大4096px,支持jpg/png/bmp格式
  495. * @param array $options - 可选参数对象,key: value都为string类型
  496. * @description options列表:
  497. * brief 更新的摘要信息,最长256B。样例:{"name":"周杰伦", "id":"666"}
  498. * class_id1 更新的商品分类1,支持1-65535范围内的整数。
  499. * class_id2 更新的商品分类2,支持1-65535范围内的整数。
  500. * @return array
  501. */
  502. public function productUpdate($image, $options=array()){
  503. $data = array();
  504. $data['image'] = base64_encode($image);
  505. $data = array_merge($data, $options);
  506. return $this->request($this->productUpdateUrl, $data);
  507. }
  508. /**
  509. * 商品检索—更新接口
  510. *
  511. * @param string $url - 图片完整URL,URL长度不超过1024字节,URL对应的图片base64编码后大小不超过4M,最短边至少15px,最长边最大4096px,支持jpg/png/bmp格式,当image字段存在时url字段失效
  512. * @param array $options - 可选参数对象,key: value都为string类型
  513. * @description options列表:
  514. * brief 更新的摘要信息,最长256B。样例:{"name":"周杰伦", "id":"666"}
  515. * class_id1 更新的商品分类1,支持1-65535范围内的整数。
  516. * class_id2 更新的商品分类2,支持1-65535范围内的整数。
  517. * @return array
  518. */
  519. public function productUpdateUrl($url, $options=array()){
  520. $data = array();
  521. $data['url'] = $url;
  522. $data = array_merge($data, $options);
  523. return $this->request($this->productUpdateUrl, $data);
  524. }
  525. /**
  526. * 商品检索—更新接口
  527. *
  528. * @param string $contSign - 图片签名
  529. * @param array $options - 可选参数对象,key: value都为string类型
  530. * @description options列表:
  531. * brief 更新的摘要信息,最长256B。样例:{"name":"周杰伦", "id":"666"}
  532. * class_id1 更新的商品分类1,支持1-65535范围内的整数。
  533. * class_id2 更新的商品分类2,支持1-65535范围内的整数。
  534. * @return array
  535. */
  536. public function productUpdateContSign($contSign, $options=array()){
  537. $data = array();
  538. $data['cont_sign'] = $contSign;
  539. $data = array_merge($data, $options);
  540. return $this->request($this->productUpdateUrl, $data);
  541. }
  542. /**
  543. * 商品检索—删除接口
  544. *
  545. * @param string $image - 图像数据,base64编码,要求base64编码后大小不超过4M,最短边至少15px,最长边最大4096px,支持jpg/png/bmp格式
  546. * @param array $options - 可选参数对象,key: value都为string类型
  547. * @description options列表:
  548. * @return array
  549. */
  550. public function productDeleteByImage($image, $options=array()){
  551. $data = array();
  552. $data['image'] = base64_encode($image);
  553. $data = array_merge($data, $options);
  554. return $this->request($this->productDeleteUrl, $data);
  555. }
  556. /**
  557. * 商品检索—删除接口
  558. *
  559. * @param string $url - 图片完整URL,URL长度不超过1024字节,URL对应的图片base64编码后大小不超过4M,最短边至少15px,最长边最大4096px,支持jpg/png/bmp格式,当image字段存在时url字段失效
  560. * @param array $options - 可选参数对象,key: value都为string类型
  561. * @description options列表:
  562. * @return array
  563. */
  564. public function productDeleteByUrl($url, $options=array()){
  565. $data = array();
  566. $data['url'] = $url;
  567. $data = array_merge($data, $options);
  568. return $this->request($this->productDeleteUrl, $data);
  569. }
  570. /**
  571. * 商品检索—删除接口
  572. *
  573. * @param string $contSign - 图片签名
  574. * @param array $options - 可选参数对象,key: value都为string类型
  575. * @description options列表:
  576. * @return array
  577. */
  578. public function productDeleteBySign($contSign, $options=array()){
  579. $data = array();
  580. $data['cont_sign'] = $contSign;
  581. $data = array_merge($data, $options);
  582. return $this->request($this->productDeleteUrl, $data);
  583. }
  584. /**
  585. * 绘本图片搜索—入库-image
  586. *
  587. * @param string $image - 图像数据,base64编码,要求base64编码后大小不超过4M,最短边至少15px,最长边最大4096px,支持jpg/png/bmp格式
  588. * @param string $brief - 简介
  589. * @param array $options - 可选参数对象,key: value都为string类型
  590. * @description options列表:
  591. * @return array
  592. */
  593. public function pictureBookAddImage($image, $brief, $options=array())
  594. {
  595. $data = array();
  596. $data['image'] = base64_encode($image);
  597. $data['brief'] = $brief;
  598. $data = array_merge($data, $options);
  599. return $this->request($this->picturebookAdd, $data);
  600. }
  601. /**
  602. * 绘本图片搜索—入库-url
  603. *
  604. * @param string $url - 图片完整URL,URL长度不超过1024字节,URL对应的图片base64编码后大小不超过4M,最短边至少15px,最长边最大4096px,支持jpg/png/bmp格式,当image字段存在时url字段失效
  605. * @param string $brief - 简介
  606. * @param array $options - 可选参数对象,key: value都为string类型
  607. * @description options列表:
  608. * @return array
  609. */
  610. public function pictureBookAddUrl($url, $brief, $options=array())
  611. {
  612. $data = array();
  613. $data['url'] = $url;
  614. $data['brief'] = $brief;
  615. $data = array_merge($data, $options);
  616. return $this->request($this->picturebookAdd, $data);
  617. }
  618. /**
  619. * 绘本图片搜索—检索-image
  620. *
  621. * @param string $image - 图像数据,base64编码,要求base64编码后大小不超过4M,最短边至少15px,最长边最大4096px,支持jpg/png/bmp格式
  622. * @param array $options - 可选参数对象,key: value都为string类型
  623. * @description options列表:
  624. * @return array
  625. */
  626. public function pictureBookSearchImage($image, $options=array()) {
  627. $data = array();
  628. $data['image'] = base64_encode($image);
  629. $data = array_merge($data, $options);
  630. return $this->request($this->picturebookSearch, $data);
  631. }
  632. /**
  633. * 绘本图片搜索—检索-url
  634. *
  635. * @param string $url - 图片完整URL,URL长度不超过1024字节,URL对应的图片base64编码后大小不超过4M,最短边至少15px,最长边最大4096px,支持jpg/png/bmp格式,当image字段存在时url字段失效
  636. * @param array $options - 可选参数对象,key: value都为string类型
  637. * @description options列表:
  638. * @return array
  639. */
  640. public function pictureBookSearchUrl($url, $options=array()) {
  641. $data = array();
  642. $data['url'] = $url;
  643. $data = array_merge($data, $options);
  644. return $this->request($this->picturebookSearch, $data);
  645. }
  646. /**
  647. * 绘本图片搜索—更新-image
  648. *
  649. * @param string $image - 图像数据,base64编码,要求base64编码后大小不超过4M,最短边至少15px,最长边最大4096px,支持jpg/png/bmp格式
  650. * @param array $options - 可选参数对象,key: value都为string类型
  651. * @description options列表:
  652. * @return array
  653. */
  654. public function pictureBookUpdate($image, $options=array()) {
  655. $data = array();
  656. $data['image'] = base64_encode($image);
  657. $data = array_merge($data, $options);
  658. return $this->request($this->picturebookUpdate, $data);
  659. }
  660. /**
  661. * 绘本图片搜索—更新-url
  662. *
  663. * @param string $url - 图片完整URL,URL长度不超过1024字节,URL对应的图片base64编码后大小不超过4M,最短边至少15px,最长边最大4096px,支持jpg/png/bmp格式,当image字段存在时url字段失效
  664. * @param array $options - 可选参数对象,key: value都为string类型
  665. * @description options列表:
  666. * @return array
  667. */
  668. public function pictureBookUpdateUrl($url, $options=array())
  669. {
  670. $data = array();
  671. $data['url'] = $url;
  672. $data = array_merge($data, $options);
  673. return $this->request($this->picturebookUpdate, $data);
  674. }
  675. /**
  676. * 绘本图片搜索—更新-cont_sign
  677. *
  678. * @param string $contSign - 图片签名
  679. * @param array $options - 可选参数对象,key: value都为string类型
  680. * @description options列表:
  681. * @return array
  682. */
  683. public function pictureBookUpdateContSign($contSign, $options=array())
  684. {
  685. $data = array();
  686. $data['cont_sign'] = $contSign;
  687. $data = array_merge($data, $options);
  688. return $this->request($this->picturebookUpdate, $data);
  689. }
  690. /**
  691. * 绘本图片搜索—删除-image
  692. *
  693. * @param string $image - 图像数据,base64编码,要求base64编码后大小不超过4M,最短边至少15px,最长边最大4096px,支持jpg/png/bmp格式
  694. * @param array $options - 可选参数对象,key: value都为string类型
  695. * @description options列表:
  696. * @return array
  697. */
  698. public function pictureBookDeleteByImage($image, $options=array())
  699. {
  700. $data = array();
  701. $data['image'] = base64_encode($image);
  702. $data = array_merge($data, $options);
  703. return $this->request($this->picturebookDelete, $data);
  704. }
  705. /**
  706. * 绘本图片搜索—删除-url
  707. *
  708. * @param string $url - 图片完整URL,URL长度不超过1024字节,URL对应的图片base64编码后大小不超过4M,最短边至少15px,最长边最大4096px,支持jpg/png/bmp格式,当image字段存在时url字段失效
  709. * @param array $options - 可选参数对象,key: value都为string类型
  710. * @description options列表:
  711. * @return array
  712. */
  713. public function pictureBookDeleteByUrl($url, $options=array())
  714. {
  715. $data = array();
  716. $data['url'] = $url;
  717. $data = array_merge($data, $options);
  718. return $this->request($this->picturebookDelete, $data);
  719. }
  720. /**
  721. * 绘本图片搜索—删除-cont_sign
  722. * @param string $contSign - 图片签名
  723. * @param array $options - 可选参数对象,key: value都为string类型
  724. * @description options列表:
  725. * @return array
  726. */
  727. public function pictureBookDeleteBySign($contSign, $options=array())
  728. {
  729. $data = array();
  730. $data['cont_sign'] = $contSign;
  731. $data = array_merge($data, $options);
  732. return $this->request($this->picturebookDelete, $data);
  733. }
  734. }