XSDatabase.html 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293
  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="css/style.css" />
  7. <link rel="stylesheet" type="text/css" href="css/api.css" />
  8. <script type="text/javascript" src="js/jquery.js"></script>
  9. <title>XSDatabase</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 API 参考文档
  15. </div><!-- end of header -->
  16. <div id="content" class="api-index">
  17. <h1>XSDatabase</h1>
  18. <div id="nav">
  19. <a href="index.html">All Packages</a>
  20. | <a href="#methods">方法(函数)</a>
  21. </div>
  22. <table class="summaryTable docClass">
  23. <colgroup>
  24. <col class="col-name" />
  25. <col class="col-value" />
  26. </colgroup>
  27. <tr>
  28. <th>包</th>
  29. <td><a href="index.html#XS.util.db">XS.util.db</a></td>
  30. </tr>
  31. <tr>
  32. <th>继承关系</th>
  33. <td>abstract class XSDatabase</td>
  34. </tr>
  35. <tr>
  36. <th>子类</th>
  37. <td><a href="XSDatabaseMySQL.html">XSDatabaseMySQL</a>, <a href="XSDatabaseMySQLI.html">XSDatabaseMySQLI</a>, <a href="XSDatabasePDO.html">XSDatabasePDO</a>, <a href="XSDatabaseSQLite.html">XSDatabaseSQLite</a>, <a href="XSDatabaseSQLite3.html">XSDatabaseSQLite3</a></td>
  38. </tr>
  39. <tr>
  40. <th>版本</th>
  41. <td>1.0.0</td>
  42. </tr>
  43. <tr>
  44. <th>源代码</th>
  45. <td><a class="sourceLink" href="https://github.com/hightman/xunsearch/blob/master/sdk/php/util/XSDataSource.class.php">sdk/php/util/XSDataSource.class.php</a></td>
  46. </tr>
  47. </table>
  48. <div id="classDescription">
  49. 数据库操作基类
  50. 定义了 SQL 数据库源的四个基本操作: connect/query/close/setUtf8</div>
  51. <a name="properties"></a>
  52. <a name="methods"></a>
  53. <div class="summary docMethod">
  54. <h2>Public 方法</h2>
  55. <p><a href="#" class="toggle">隐去继承来的方法</a></p>
  56. <table class="summaryTable">
  57. <colgroup>
  58. <col class="col-method" />
  59. <col class="col-description" />
  60. <col class="col-defined" />
  61. </colgroup>
  62. <tr>
  63. <th>名称</th><th>描述</th><th>定义于</th>
  64. </tr>
  65. <tr id="close">
  66. <td><a href="XSDatabase.html#close-detail">close()</a></td>
  67. <td>关闭数据库连接</td>
  68. <td>XSDatabase</td>
  69. </tr>
  70. <tr id="connect">
  71. <td><a href="XSDatabase.html#connect-detail">connect()</a></td>
  72. <td>连接数据库</td>
  73. <td>XSDatabase</td>
  74. </tr>
  75. <tr id="query">
  76. <td><a href="XSDatabase.html#query-detail">query()</a></td>
  77. <td>查询 SQL 语句</td>
  78. <td>XSDatabase</td>
  79. </tr>
  80. <tr id="query1">
  81. <td><a href="XSDatabase.html#query1-detail">query1()</a></td>
  82. <td>查询数据库首行</td>
  83. <td>XSDatabase</td>
  84. </tr>
  85. <tr id="setUtf8">
  86. <td><a href="XSDatabase.html#setUtf8-detail">setUtf8()</a></td>
  87. <td>设置数据库字符集为 UTF-8</td>
  88. <td>XSDatabase</td>
  89. </tr>
  90. </table>
  91. </div>
  92. <a name="events"></a>
  93. <h2>方法明细</h2>
  94. <div class="detailHeader" id="close-detail">
  95. close()
  96. <span class="detailHeaderTag">
  97. 方法
  98. </span>
  99. </div>
  100. <table class="summaryTable">
  101. <tr><td colspan="3">
  102. <div class="signature2">
  103. abstract public void <b>close</b>()</div>
  104. </td></tr>
  105. </table>
  106. <div class="sourceCode">
  107. <b>源码:</b> <a class="sourceLink" href="https://github.com/hightman/xunsearch/blob/master/sdk/php/util/XSDataSource.class.php#L428">sdk/php/util/XSDataSource.class.php#L428</a> (<b><a href="#" class="show">显示</a></b>)
  108. <div class="code"><code><span style="color: #000000">
  109. <span style="color: #0000BB"></span><span style="color: #007700">abstract&nbsp;public&nbsp;function&nbsp;</span><span style="color: #0000BB">close</span><span style="color: #007700">();</span>
  110. </span>
  111. </code></div>
  112. </div>
  113. <p>关闭数据库连接</p>
  114. <div class="detailHeader" id="connect-detail">
  115. connect()
  116. <span class="detailHeaderTag">
  117. 方法
  118. </span>
  119. </div>
  120. <table class="summaryTable">
  121. <tr><td colspan="3">
  122. <div class="signature2">
  123. abstract public void <b>connect</b>(array $param)</div>
  124. </td></tr>
  125. <tr>
  126. <td class="paramNameCol">$param</td>
  127. <td class="paramTypeCol">array</td>
  128. <td class="paramDescCol">连接参数, 采用 parse_url 解析, 可能包含: scheme,user,pass,host,path,table,dbname ...</td>
  129. </tr>
  130. </table>
  131. <div class="sourceCode">
  132. <b>源码:</b> <a class="sourceLink" href="https://github.com/hightman/xunsearch/blob/master/sdk/php/util/XSDataSource.class.php#L423">sdk/php/util/XSDataSource.class.php#L423</a> (<b><a href="#" class="show">显示</a></b>)
  133. <div class="code"><code><span style="color: #000000">
  134. <span style="color: #0000BB"></span><span style="color: #007700">abstract&nbsp;public&nbsp;function&nbsp;</span><span style="color: #0000BB">connect</span><span style="color: #007700">(</span><span style="color: #0000BB">$param</span><span style="color: #007700">);</span>
  135. </span>
  136. </code></div>
  137. </div>
  138. <p>连接数据库</p>
  139. <div class="detailHeader" id="query-detail">
  140. query()
  141. <span class="detailHeaderTag">
  142. 方法
  143. </span>
  144. </div>
  145. <table class="summaryTable">
  146. <tr><td colspan="3">
  147. <div class="signature2">
  148. abstract public mixed <b>query</b>($sql)</div>
  149. </td></tr>
  150. <tr>
  151. <td class="paramNameCol">$sql</td>
  152. <td class="paramTypeCol"></td>
  153. <td class="paramDescCol"></td>
  154. </tr>
  155. <tr>
  156. <td class="paramNameCol">{return}</td>
  157. <td class="paramTypeCol">mixed</td>
  158. <td class="paramDescCol">非 SELECT 语句返回执行结果(true/false), SELECT 语句返回所有结果行的数组</td>
  159. </tr>
  160. </table>
  161. <div class="sourceCode">
  162. <b>源码:</b> <a class="sourceLink" href="https://github.com/hightman/xunsearch/blob/master/sdk/php/util/XSDataSource.class.php#L434">sdk/php/util/XSDataSource.class.php#L434</a> (<b><a href="#" class="show">显示</a></b>)
  163. <div class="code"><code><span style="color: #000000">
  164. <span style="color: #0000BB"></span><span style="color: #007700">abstract&nbsp;public&nbsp;function&nbsp;</span><span style="color: #0000BB">query</span><span style="color: #007700">(</span><span style="color: #0000BB">$sql</span><span style="color: #007700">);</span>
  165. </span>
  166. </code></div>
  167. </div>
  168. <p>查询 SQL 语句</p>
  169. <div class="detailHeader" id="query1-detail">
  170. query1()
  171. <span class="detailHeaderTag">
  172. 方法
  173. </span>
  174. </div>
  175. <table class="summaryTable">
  176. <tr><td colspan="3">
  177. <div class="signature2">
  178. public 查询结果首行, <b>query1</b>(string $sql)</div>
  179. </td></tr>
  180. <tr>
  181. <td class="paramNameCol">$sql</td>
  182. <td class="paramTypeCol">string</td>
  183. <td class="paramDescCol"></td>
  184. </tr>
  185. <tr>
  186. <td class="paramNameCol">{return}</td>
  187. <td class="paramTypeCol">查询结果首行,</td>
  188. <td class="paramDescCol">失败或无数据则返回 false</td>
  189. </tr>
  190. </table>
  191. <div class="sourceCode">
  192. <b>源码:</b> <a class="sourceLink" href="https://github.com/hightman/xunsearch/blob/master/sdk/php/util/XSDataSource.class.php#L450">sdk/php/util/XSDataSource.class.php#L450</a> (<b><a href="#" class="show">显示</a></b>)
  193. <div class="code"><code><span style="color: #000000">
  194. <span style="color: #0000BB"></span><span style="color: #007700">public&nbsp;function&nbsp;</span><span style="color: #0000BB">query1</span><span style="color: #007700">(</span><span style="color: #0000BB">$sql</span><span style="color: #007700">)<br />{<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">$sql&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">preg_replace</span><span style="color: #007700">(</span><span style="color: #DD0000">'/&nbsp;limit\s+(\d+)(?:\s*,\s*(\d+)|\s+offset\s+(\d+))?\s*$/i'</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">''</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">$sql</span><span style="color: #007700">);<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">$sql&nbsp;</span><span style="color: #007700">.=&nbsp;</span><span style="color: #DD0000">'&nbsp;LIMIT&nbsp;1'</span><span style="color: #007700">;<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">$res&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">$this</span><span style="color: #007700">-&gt;</span><span style="color: #0000BB">query</span><span style="color: #007700">(</span><span style="color: #0000BB">$sql</span><span style="color: #007700">);<br />&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;(</span><span style="color: #0000BB">is_array</span><span style="color: #007700">(</span><span style="color: #0000BB">$res</span><span style="color: #007700">)&nbsp;&amp;&amp;&nbsp;isset(</span><span style="color: #0000BB">$res</span><span style="color: #007700">[</span><span style="color: #0000BB">0</span><span style="color: #007700">]))&nbsp;?&nbsp;</span><span style="color: #0000BB">$res</span><span style="color: #007700">[</span><span style="color: #0000BB">0</span><span style="color: #007700">]&nbsp;:&nbsp;</span><span style="color: #0000BB">false</span><span style="color: #007700">;<br />}</span>
  195. </span>
  196. </code></div>
  197. </div>
  198. <p>查询数据库首行</p>
  199. <div class="detailHeader" id="setUtf8-detail">
  200. setUtf8()
  201. <span class="detailHeaderTag">
  202. 方法
  203. </span>
  204. </div>
  205. <table class="summaryTable">
  206. <tr><td colspan="3">
  207. <div class="signature2">
  208. public bool <b>setUtf8</b>()</div>
  209. </td></tr>
  210. <tr>
  211. <td class="paramNameCol">{return}</td>
  212. <td class="paramTypeCol">bool</td>
  213. <td class="paramDescCol">如果数据库能直接输出 UTF-8 编码则返回 true 否则返回 false</td>
  214. </tr>
  215. </table>
  216. <div class="sourceCode">
  217. <b>源码:</b> <a class="sourceLink" href="https://github.com/hightman/xunsearch/blob/master/sdk/php/util/XSDataSource.class.php#L440">sdk/php/util/XSDataSource.class.php#L440</a> (<b><a href="#" class="show">显示</a></b>)
  218. <div class="code"><code><span style="color: #000000">
  219. <span style="color: #0000BB"></span><span style="color: #007700">public&nbsp;function&nbsp;</span><span style="color: #0000BB">setUtf8</span><span style="color: #007700">()<br />{<br />&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;</span><span style="color: #0000BB">false</span><span style="color: #007700">;<br />}</span>
  220. </span>
  221. </code></div>
  222. </div>
  223. <p>设置数据库字符集为 UTF-8</p>
  224. </div><!-- end of content -->
  225. <div id="apiFooter">
  226. Copyright &copy; 2008-2011 by <a href="http://www.xunsearch.com" target="_blank">杭州云圣网络科技有限公司</a><br/>
  227. All Rights Reserved.<br/>
  228. </div><!-- end of footer -->
  229. <script type="text/javascript">
  230. /*<![CDATA[*/
  231. $("a.toggle").toggle(function(){
  232. $(this).text($(this).text().replace(/Hide/,'Show'));
  233. $(this).parents(".summary").find(".inherited").hide();
  234. },function(){
  235. $(this).text($(this).text().replace(/Show/,'Hide'));
  236. $(this).parents(".summary").find(".inherited").show();
  237. });
  238. $(".sourceCode a.show").toggle(function(){
  239. $(this).text($(this).text().replace(/show/,'hide'));
  240. $(this).parents(".sourceCode").find("div.code").show();
  241. },function(){
  242. $(this).text($(this).text().replace(/hide/,'show'));
  243. $(this).parents(".sourceCode").find("div.code").hide();
  244. });
  245. $("a.sourceLink").click(function(){
  246. $(this).attr('target','_blank');
  247. });
  248. /*]]>*/
  249. </script>
  250. </div><!-- end of page -->
  251. </body>
  252. </html>