index.add.html 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=gbk" />
  5. <meta name="language" content="zh-cn" />
  6. <link rel="stylesheet" type="text/css" href="../api/css/style.css" />
  7. <link rel="stylesheet" type="text/css" href="../api/css/guide.css" />
  8. <link rel="stylesheet" type="text/css" href="../api/css/highlight.css" />
  9. <title>添加文档</title>
  10. </head>
  11. <body>
  12. <div id="apiPage">
  13. <div id="apiHeader">
  14. <a href="http://www.xunsearch.com" target="_blank">Xunsearch PHP-SDK</a> v1.3.2 权威指南
  15. </div><!-- end of header -->
  16. <div id="content" class="markdown">
  17. <h1 id="-">添加文档</h1>
  18. <p>搜索数据库在创建之初或运行过程中,都免不了要往索引数据库添加新文档用于检索。</p>
  19. <p>首先您必须创建类型为 <a href="../api/XSDocument.html">XSDocument</a> 的文档对象,关于文档对象的创建请参阅
  20. <a href="class.document.html">XSDocument 文档</a> 中关于<strong>索引文档</strong>的部分。特别要指出
  21. 的是,文档中的主键字段值必须明确指定(即类型为 <code>ID</code> 的字段),否则在添加、
  22. 更新过程中会抛出异常,其余字段若未指定则相当于忽略这些字段。</p>
  23. <p>索引文档创建后,再调用 <a href="../api/XSIndex.html#add">XSIndex::add</a> 方法将文档加入索引数据库中即可。</p>
  24. <blockquote class="note">
  25. <p><strong>Note:</strong> 如果索引数据库中已存在主键值相同的文档,并不会有冲突提示,文档仍会
  26. 添加成功并且不会有任何冲突提醒。所以除非您明确知道此为新文档,否则建议使用
  27. <a href="index.update.html">更新文档</a>。</p>
  28. <p>此外,如果您自行扩展了 <a href="../api/XSDocument.html">XSDocument</a>,请使用您自定定义的文档类创建对象。</p>
  29. </blockquote>
  30. <p>参考代码如下:</p>
  31. <div class="hl-code"><div class="php-hl-main"><pre><span class="php-hl-var">$data</span><span class="php-hl-code"> = </span><span class="php-hl-reserved">array</span><span class="php-hl-brackets">(</span>
  32. <span class="php-hl-quotes">'</span><span class="php-hl-string">pid</span><span class="php-hl-quotes">'</span><span class="php-hl-code"> =&gt; </span><span class="php-hl-number">234</span><span class="php-hl-code">, </span><span class="php-hl-comment">//</span><span class="php-hl-comment"> 此字段为主键,必须指定</span>
  33. <span class="php-hl-quotes">'</span><span class="php-hl-string">subject</span><span class="php-hl-quotes">'</span><span class="php-hl-code"> =&gt; </span><span class="php-hl-quotes">'</span><span class="php-hl-string">测试文档的标题</span><span class="php-hl-quotes">'</span><span class="php-hl-code">,
  34. </span><span class="php-hl-quotes">'</span><span class="php-hl-string">message</span><span class="php-hl-quotes">'</span><span class="php-hl-code"> =&gt; </span><span class="php-hl-quotes">'</span><span class="php-hl-string">测试文档的内容部分</span><span class="php-hl-quotes">'</span><span class="php-hl-code">,
  35. </span><span class="php-hl-quotes">'</span><span class="php-hl-string">chrono</span><span class="php-hl-quotes">'</span><span class="php-hl-code"> =&gt; </span><span class="php-hl-identifier">time</span><span class="php-hl-brackets">(</span><span class="php-hl-brackets">)</span>
  36. <span class="php-hl-brackets">)</span><span class="php-hl-code">;
  37. </span><span class="php-hl-comment">//</span><span class="php-hl-comment"> 创建文档对象</span>
  38. <span class="php-hl-var">$doc</span><span class="php-hl-code"> = </span><span class="php-hl-reserved">new</span> <span class="php-hl-identifier">XSDocument</span><span class="php-hl-code">;
  39. </span><span class="php-hl-var">$doc</span><span class="php-hl-code">-&gt;</span><span class="php-hl-identifier">setFields</span><span class="php-hl-brackets">(</span><span class="php-hl-var">$data</span><span class="php-hl-brackets">)</span><span class="php-hl-code">;
  40. </span><span class="php-hl-comment">//</span><span class="php-hl-comment"> 添加到索引数据库中</span>
  41. <span class="php-hl-var">$index</span><span class="php-hl-code">-&gt;</span><span class="php-hl-identifier">add</span><span class="php-hl-brackets">(</span><span class="php-hl-var">$doc</span><span class="php-hl-brackets">)</span><span class="php-hl-code">;</span></pre></div></div>
  42. <div class="revision">$Id$</div>
  43. <div class="clear"></div>
  44. </div><!-- end of content -->
  45. <div id="guideNav">
  46. <div class="prev"><a href="index.overview.html">&laquo; 索引概述</a></div>
  47. <div class="next"><a href="index.update.html">更新、修改文档 &raquo;</a></div>
  48. <div class="clear"></div>
  49. </div><!-- end of nav -->
  50. <div id="apiFooter">
  51. Copyright &copy; 2008-2011 by <a href="http://www.xunsearch.com" target="_blank">杭州云圣网络科技有限公司</a><br/>
  52. All Rights Reserved.<br/>
  53. </div><!-- end of footer -->
  54. </div><!-- end of page -->
  55. <div style="display:none;">
  56. <img src="../api/css/info.gif" />
  57. <img src="../api/css/tip.gif" />
  58. <img src="../api/css/note.gif" />
  59. </div>
  60. </body>
  61. </html>