[Xunsearch PHP-SDK](http://www.xunsearch.com) v1.4.8 权威指南
1. [目录设置](#)
1. [保留字](#)
1. [自定义分词](#)
1. [字段设计](#)
1. [异常处理](#)
# 开发规范
在开始任何开发之前,有必要先强调一下开发规范。开发规范并不是强制性的要求,而只是为了使项目及代码更利于维护、阅读而制定的一些习惯行为公约。
### 1. 目录设置[?]()
无论您是否将 `PHP-SDK` 的代码拷出单独使用,强烈建议保留现有的目录结构。
开发的项目配置 ini 文件统一放入 `$prefix/sdk/php/app` 目录。
自定义或扩展的类库请统一放入 `$prefix/sdk/php/lib` 以便 `XS` 进行 `autoload`。
### 2. 保留字[?]()
所有 `Xunsearch PHP-SDK` 的系统类库定义时均以 `XS` 开头,为避免冲突,请自行编写代码和定义时不要也以 `XS` 开头。
### 3. 自定义分词[?]()
Xunsearch 在项目配置时支持针对某些字段自定义分词。每个自定义分词功能单独使用一个文件名,命名为 `XSTokenizerXyz.class.php`,其中 `Xyz` 是您自己的分词名称,文件统一放入 `$prefix/sdk/php/lib` 目录,分词类名即为 `XSTokenizerXyz`,该类必须实现[XSTokenizer](#) 接口。
### 4. 字段设计[?]()
多数搜索项目可能都是和相关的数据库联动的,出于开发方便,强烈建议让搜索项目的字段命名和实际数据库内的命名一致。在此基础下推荐以下命名规范:
- 字段名都使用小写命名,您可以根据自己的偏好选择用单数或复数形式,但不要二者同时使用。
- 名字中的单词应使用下划线分割 (例如 product_order)。
- 只在搜索项目中设置搜索结果展示、搜索条件必须用到的字段,不要在搜索项目中保存无关字段。
### 5. 异常处理[?]()
由于 `Xunsearch PHP-SDK` 全面采用面向对象技术,所有失败的操作均抛出类型为 [XSException](#)的异常,请在执行主线中捕捉它。具体参见 [XSException 异常](#) 章节的有关介绍。
$Id$
[« 体验 demo 项目](#)
[开发流程 »](#)
Copyright © 2008-2011 by [杭州云圣网络科技有限公司](http://www.xunsearch.com)
All Rights Reserved.
![](https://box.kancloud.cn/2015-09-10_55f11d0169830.gif)
![](https://box.kancloud.cn/2015-09-10_55f11d0174ac0.gif)
![](https://box.kancloud.cn/2015-09-10_55f11d017e372.gif)
- 权威指南
- 新手上路
- 最新主要变动
- 概述
- 关于 Xunsearch PHP-SDK
- 安装、升级
- 体验 demo 项目
- 开发规范
- 开发流程
- 了解基础对象
- 基础对象概述
- XS 项目
- XSException 异常
- XSDocument 文档
- XSIndex 索引管理
- XSSearch 搜索
- XSTokenizer 分词接口
- 编写项目配置文件
- 项目配置详解
- 自定义分词器
- 编写第一个配置文件
- 管理索引
- 索引概述
- 添加文档
- 更新、修改文档
- 删除文档
- 清空索引
- 平滑重建索引
- 使用索引缓冲区
- 自定义SCWS词库
- 使用搜索
- 搜索概述
- 构建搜索语句
- 获取搜索匹配结果
- 获取搜索匹配数量
- 获取热门搜索词
- 获取相关搜索词
- 搜索建议和纠错
- 按字段值分面搜索
- 使用辅助工具
- RequiredCheck 运行检测
- Indexer 索引管理器
- Quest 搜索测试工具
- SearchSkel 生成搜索代码
- IniWizzard 配置文件向导
- Logger 搜索日志管理
- 专题
- 同义词搜索功能
- 在SDK中使用SCWS分词
- API 指南
- XS
- XS
- XSCommand
- XSComponent
- XSDocument
- XSErrorException
- XSException
- XSFieldMeta
- XSFieldScheme
- XSIndex
- XSSearch
- XSServer
- XS.tokenizer
- XSTokenizer
- XSTokenizerFull
- XSTokenizerNone
- XSTokenizerScws
- XSTokenizerSplit
- XSTokenizerXlen
- XSTokenizerXstep
- XS.util
- XSCsvDataSource
- XSDataFilter
- XSDatabaseDataSource
- XSDebugFilter
- XSJsonDataSource
- XSUtil
- XS.util.db
- XSDatabase
- XSDatabaseMySQL
- XSDatabaseMySQLI
- XSDatabasePDO
- XSDatabasePDO_MySQL
- XSDatabasePDO_PgSQL
- XSDatabasePDO_SQLite
- XSDatabasePgSQL
- XSDatabaseSQLite
- XSDatabaseSQLite3
- XS.utilf
- XSDataSource
- 其它文档
- 关于 xunsearch
- 特色和优势
- Xunsearch 架构简图
- 下载 Xunsearch
- 商业服务与支持
- XunSearch 授权许可证