




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、 Office Anywhere 網絡智能辦公系統二次開發手冊V7.5.131120(2013增強版)通達信科中國兵器工業信息中心目 錄目 錄1前 言1第一章 軟件開發環境簡介21.1 編程環境21.3參數配置31.3.1 Apache配置31.3.2 PHP配置41.3.2 MySQL配置4第二章 數據庫管理52.1 phpMyAdmin的安裝52.2 phpMyAdmin的使用5第三章 如何創建一個模塊83.1建立模塊目錄83.2 創建菜單83.3 分配菜單權限93.4 編碼和測試93.4.1 系統變量93.4.2 PHP代碼樣例103.4.3 連接數據庫代碼10第四章 內置函數參考124
2、.1 utility.php124.1.1 Message124.1.2 Button_Back124.1.3 find_id134.1.4 get_client_ip134.2 utility_all.php134.2.1 csubstr134.2.2 is_ip144.2.3 add_log144.2.4 get_code_name154.2.5 dept_long_name154.2.6 get_sys_para154.2.7 set_sys_para164.3 utility_org.php164.3.1 is_dept_parent164.3.2 top_dept174.3.3 Ge
3、tDeptNameById174.3.4 GetPrivNameById174.3.5 GetUserNameById184.3.6 GetUserNameByUid184.3.7 my_exclude_uid184.4 utility_sms1.php194.4.1 send_sms194.4.2 delete_sms194.5 utility_sms2.php204.5.1 send_mobile_sms_user204.5.2 send_mobile_sms204.6 utility_file.php214.6.1 upload214.6.2 delete_attach214.6.3 a
4、ttach_size214.6.4 copy_attach224.6.5 is_uploadable224.6.6 is_text234.6.7 is_office234.6.8 is_image234.6.9 is_viewable244.6.10 is_media244.6.11 dir_size244.6.12 delete_dir254.6.13 attach_sub_dir254.6.14 attach_real_path264.6.15 attach_id_encode264.6.16 attach_id_decode264.6.17 td_copy274.6.18 td_rena
5、me274.6.19 td_move_uploaded_file284.6.20 td_file_put_contents284.6.21 add_attach_module284.6.22 attach_module_id294.6.23 attach_sign_key294.6.24 attach_sign_key_netdisk294.6.25 attach_real_path_netdisk304.6.26 cache_attach_para304.6.27 attach_url304.6.28 attach_url_pda314.6.29 attach_link324.6. 30 a
6、ttach_link_pda324.6.31 attach_url_old334.6.32 upload_old334.6.33 add_attach_old344.6.34 delete_attach_old344.6.35 add_attach344.6.36 copy_attach_netdisk354.6.37 copy_sel_attach354.6.38 office_attach364.6.39 create_attach364.6.40 is_editable364.6.41 is_wps374.6.42 is_ppt_xls374.6.43 is_thumbable374.6
7、.44 image_mimetype384.6.45 Is_SysFile384.6.46 file_type384.6.47 mime_type394.6.48 trim_office_attach394.6.49 dir_file_nums394.6.50 CreateThumb404.6.51 ReplaceImageSrc404.6.52 trim_inserted_image404.6.53 backup_file414.6.54 oc_log414.6.55 attach_id_explode424.6.56 attach_id_implode42第五章 公用組件參考435.1 人
8、員多選435.2 人員單選435.3 部門多選445.4 部門單選455.5 角色多選46前 言Office Anywhere網絡智能辦公系統(以下簡稱通達OA),不僅是一套成熟的網絡辦公系統,同時也是一個完整、精巧的軟件開發平臺,不僅集成了Web開發的全套環境,并提供了管理架構、系統資源的開放性支持,是開發中小型管理應用系統的理想平臺。本文將從不同的技術層面向您揭示通達OA的二次開發細節,是主要針對專職程序設計人員、編程愛好者、軟件產品技術支持人員編寫的OA二次開發入門教程。通過閱讀本文,您將不僅可以了解通達OA的設計奧秘,也將能夠運用本文所介紹的知識和技巧,輕松構建屬于自己的應用系統或模塊
9、,文中將結合具體實例加以說明。第一章 軟件開發環境簡介1.1 編程環境通達OA主要采用PHP語言開發,系統使用MySQL數據庫。在Windows平臺下,通達OA主要注冊了9個系統服務,可以通過控制面板-管理工具-服務,查看這9項服務,服務名分別是Office_Anywhere、MySQL5_OA、memcached Server、OfficeDaemon、OfficeIm、OfficeIndex、OfficeMail、OfficePOP3、OfficeTask,Office_Anywhere服務實際是集成了PHP模塊的Apache服務,Apache是通達OA所使用的Web Server,通達O
10、A也可以支持IIS作為Web Server,具體配置方法參見通達網站OA知識庫相關文檔。關于PHP語言的使用,可參閱,下載PHP手冊,作為開發指導;關于MySQL數據庫的管理與使用,將在第二章進行詳細介紹。1.2目錄層次結構通達OA的目錄層次結構清晰,體現出對服務程序、應用程序、WEB頁面的巧妙整合與組織,便于理解和擴充,下面對目錄結構加以說明:MYOAattachOA附件文件存放目錄binApache、PHP、Zend等主程序及配置文件,服務配置程序等confApache配置文件data5MySQL數據庫文件目錄 BUS公交線路查詢數據庫 TD_OA通達OA主數據庫 MySQLMySQL系統
11、數據庫 TD_OA_ARCHIVE通達OA歸檔數據庫 ib_logfile0InnoDB引擎使用的日志文件 ib_logfile1InnoDB引擎使用的日志文件 ibdata1InnoDB引擎存儲數據與索引的數據文件logsApache等日志文件目錄modulesApache的模塊文件MyAdmin通達OA的MySQL管理工具mysql5MySQL主程序文件nginx高性能的通達Nginx Web應用服務tmp臨時文件目錄webroot通達OA的WEB根目錄(PHP程序目錄)attachment部分OA附件文件存放目錄 hrms_pic人事檔案照片目錄 product_pic銷售管理產品照片存
12、放目錄 new_sms新短消息提醒狀態文件 部分附件目錄(略) rss今日資訊信息緩存文件 update系統升級,該文件夾下如存在1.php會被自動執行并刪除 weather天氣預報緩存文件 wm外部郵件存儲目錄 general主要模塊目錄 一般模塊目錄(略) ipanel主控面板,集成了菜單、短信箱等應用控制界面 mytable桌面模塊程序 system系統功能模塊,下級目錄略 inc系統通用程序及函數目錄ispiritOA精靈頁面 mobileOA移動界面 module系統組件 dept_select部門選擇組件 editor簡易HTML編輯器組件 OCOffice 文檔在線編輯與閱讀 O
13、C_NETDISK文檔在線編輯與閱讀-僅適用于網絡硬盤 save_file文件轉存組件 user_select用戶多選組件 user_select_single用戶單選組件portal門戶界面static系統通用程序及靜態文件目錄 common通用css文件及其引用的圖片文件 images所有代碼中的<img>標簽src引用的圖片文件templates登錄界面模版theme界面主題wav微訊提醒聲音js界面主題templates登錄界面模版modules所有模塊非通用的css文件及其引用的圖片文件等的目錄address通訊簿非通用css文件及其引用的圖片文件 部分模塊目錄(略)wo
14、rkflow工作流非通用css文件及其引用的圖片文件注:上表中紅色顏色標示的目錄是備份數據時需要備份的,是OA的所有數據所存放的目錄。1.3參數配置1.3.1 Apache配置(MYOAconfhttpd.conf)Timeout 300/連接超時,單位秒ServerTokens Prod/Apache信息,Full,OS,Minor,Minimal,Major,ProdErrorDocument/錯誤文檔ErrorLog logs/error.log/錯誤日志CustomLog logs/access.log combined/訪問日志1.3.2 PHP配置(MYOAbinphp.ini)d
15、isplay_errors = Off/是否顯示PHP程序錯誤log_errors = Off/是否記錄錯誤日志error_log = filename/錯誤日志記錄文件max_execution_time = 1200/程序最大執行時間,單位秒memory_limit = 256M/單個程序占用內存上限post_max_size = 1000M/表單提交最大數據量,單位MBupload_max_filesize = 200M/上傳單個附件大小,單位MB1.3.2 MySQL配置(MYOAmysql5my.ini)basedir=D:/MYOA/mysql5/MySQL主程序路徑datadir
16、=D:/MYOA/data5/MySQL數據庫路徑tmpdir=D:/MYOA/tmp/緩存路徑character-set-server=gbk/MySQL數據庫字編碼port=3336/端口wait_timeout=30/SQL語句執行結束后自動斷開時間interactive_timeout=30/運行SQL語句時段開時間skip-name-resolve/避免外部鎖定(默認是ON)bind-address=/允許遠程連接innodb_file_per_table=1/啟用獨立表空間模式innodb_file_format=Barracuda/InnoDB數據壓縮注:以上所有的
17、配置選項修改后都需要重啟服務才會生效。第二章 數據庫管理2.1 phpMyAdmin的安裝MySQL的數據庫管理工具很多,phpMyAdmin是使用PHP編寫的免費MySQL數據庫管理工具。由于OA的MySQL數據庫出于安全考慮,被配置為僅能從本機訪問,所以使用phpMyAdmin這樣的B/S結構的管理工具,可實現數據庫的遠程管理。第一步、下載程序包phpMyAdmin程序可以從其官方網站下載,建議下載最新的all-language版本。第二步、解壓縮在MYOAwebroot目錄下新建一個目錄,如mysql369(為了防止他人利用該工具侵入數據庫系統,可把目錄名設為比較復雜的,如MySQL23
18、45,避免目錄名被猜測到。),將下載的程序包解壓后拷貝至mysql369目錄下。第三步、修改配置文件用文本編輯器,如記事本,打開MySQL管理工具目錄,復制config.sample.inc.php文件并改名為confing.inc.php,打開后修改以下配置信息:$cfg'blowfish_secret' = ''/隨便輸入一個字符串,加密Cookie等信息$cfg'Servers'$i'auth_type' = 'http'/http,config,cookie,建議使用http$cfg'Servers
19、'$i'host' = 'localhost'/數據庫地址,默認為localhost$cfg'Servers'$i'port' = '3336'/數據庫端口,默認為3336$cfg'Servers'$i'user' = 'root'/數據庫用戶名,默認為root$cfg'Servers'$i'password' = ''/數據庫密碼,默認為myoa888第四步、使用phpMyAdminMySQL管理工具地址:ht
20、tp:/OA地址/mysql,注意,進入后先選擇中文界面(中文-Chinese simplified )。該管理工具的使用需具有一定數據庫基礎,請勿進行危險操作,以免導致數據丟失。2.2 phpMyAdmin的使用phpMyAdmin主界面如下在左側選擇TD數據庫,可查看OA所有的數據表,如下圖點擊左側的表名,則右側列出該表的結構和字段、索引、記錄數等信息,如下圖phpMyAdmin的具體使用教程方法可以參考 通達網站/OA知識庫/Office Anywhere 高級應用技巧/OA數據庫管理工具/mysql網頁方式管理工具/phpMyAdmin的安裝和使用.wmv 。第三章 如何創建一個模塊創
21、建一個模塊一般需要經過以下幾個步驟:根據功能建立程序存放目錄、創建菜單、分配菜單權限、編碼、測試等。3.1建立模塊目錄在MYOAwebrootgeneral下建議一個目錄abc,作為自己開發模塊的目錄,將程序放置于該目錄下,默認頁面是index.php或index.html或index.htm3.2 創建菜單用管理員帳號進入OA,打開 系統管理->菜單設置,在相應的一級菜單后點擊“下一級”鏈接,在右側的界面上點擊“增加子菜單項”按鈕,如下圖所示:詳細閱讀上圖界面中的說明信息,按界面上說明的要求定義好菜單:子菜單項ID:系統自動生成,無須調整上級菜單:根據自己的實際應用情況調整子菜單項代碼
22、:兩位的數字或字母,作為排序之用子菜單項名稱:根據自己的實際應用自行填寫子菜單模塊路徑:該菜單對應的程序目錄,應為上一個步驟創建的目錄名稱。如果為abc,則該菜單對應的菜單圖片名稱為MYOAwebrootstaticimagesmenuabc.gif,需要自己創建或拷貝abc.gif拷貝至MYOAwebrootstaticimagesmenu下.3.3 分配菜單權限用管理員帳號進入OA,打開 系統管理->組織機構設置->角色與權限管理,給相關的角色分配剛創建的菜單的使用權限,則相關角色的人員就可以在OA界面左側的菜單中看到并訪問該菜單。3.4 編碼和測試為便于用戶開發自己的模塊,通
23、達科技在用戶服務區提供了Office Anywhere部份模塊源碼的下載,供開發人員參考。用戶自行開發OA的功能模塊,需要根據OA的相關規范進行開發,這樣既可以使自行開發的模塊和OA的界面效果一致,又可以保證自行開發的程序在OA安全框架的保護之下,這樣不僅可以保證新模塊數據的安全,又可以使開發人員集中精力投入到模塊功能的開發上。OA的各功能模塊下的每個程序都需要包含OA的安全驗證程序:inc/auth.inc.php。該程序包含了對用戶登錄信息、是否有權限訪問該路徑等的檢查等。具體的語法為:include_once("inc/auth.inc.php");為更好兼容更多版本
24、的瀏覽器,需要使用標準統一的HTML解析模式對頁面進行解析和渲染,在所有包含HTML代碼輸出的頁面,都需要包含:inc/header.inc.php,輸出統一的HTML頭信息,包括采用的HTML標準、頁面字符集、頁面標題、標準界面樣式表(style.css)等。在沒有HTML代碼輸出的頁面,不需要包含該文件。OA數據庫的所有表名全部使用小寫字母,字段名稱全部使用大寫字母,新模塊中字段名也建議與表名統一使用小寫字母,開發過程請注意。在開發自己的功能模塊時可以參考現有OA模塊,把功能相似的OA模塊代碼復制一份,然后在OA 代碼的基礎上修改。以下幾個小節介紹OA系統變量和數據庫的使用。3.4.1 系
25、統變量OA系統提供了16個通過SESSION保存的當前用戶的系統變量,分別是$_SESSION"LOGIN_UID"/用戶數字ID$_SESSION"LOGIN_USER_ID"/用戶名,登錄使用$_SESSION"LOGIN_BYNAME"/用戶別名$_SESSION"LOGIN_USER_NAME"/用戶真實姓名$_SESSION"LOGIN_USER_PRIV"/用戶角色ID$_SESSION"LOGIN_USER_PRIV_OTHER"/用戶輔助角色ID$_SESSI
26、ON"LOGIN_SYS_ADMIN"/用戶是否有系統管理員權限$_SESSION"LOGIN_DEPT_ID"/用戶部門ID$_SESSION"LOGIN_DEPT_ID_OTHER"/用戶輔助部門ID$_SESSION"LOGIN_AVATAR"/用戶頭像$_SESSION"LOGIN_THEME"/用戶界面主題$_SESSION"LOGIN_FUNC_STR"/用戶模塊權限$_SESSION"LOGIN_NOT_VIEW_USER"/用戶禁止查看用戶
27、列表$_SESSION"LOGIN_DEPT_ID_JUNIOR"/用戶所在部門和所屬部門合集字符串$_SESSION"LOGIN_CLIENT"/用戶登錄OA的設備類型$_SESSION"LOGIN_USER_SEX"/用戶性別如需使用這些系統變量,程序需要包含auth.inc.php,如下代碼:<?include_once("inc/auth.inc.php");echo "我的登錄用戶ID是".$_SESSION"LOGIN_USER_ID" /本句中的.表示字符
28、串連接?>3.4.2 PHP代碼樣例以下是一段樣例代碼index.php,可放置于abc目錄下,可作為開發OA應用程序的模版。/或/*/是PHP的注釋語句。<?include_once("inc/auth.inc.php");/ 如需登錄驗證則包含,未登錄將退出/include_once("inc/conn.php");/ 如需要連接數據庫則包含/include_once("inc/utility_all.php");/ 如需要使用公用函數則包含/include_once("inc/check_type.php&
29、quot;);/ 如需要使用類型檢驗函數則包含$HTML_PAGE_TITLE = _("功能模塊名稱");include_once("inc/header.inc.php");/ 如有HTML代碼輸出則包含/如已包含auth.inc.php,則無須包含conn.php?><body class="bodycolor"><?echo "當前登錄的用戶為:".$_SESSION"LOGIN_USER_NAME".",用戶名為:".$_SESSION&qu
30、ot;LOGIN_USER_ID"?></body></html>程序運行結果如下:3.4.3 連接數據庫代碼以下程序代碼為讀取admin用戶所屬部門的示例:<?include_once("inc/auth.inc.php");/ 如需登錄驗證則包含,未登錄將退出include_once("inc/utility_all.php");/ 如需要使用公用函數則包含$HTML_PAGE_TITLE = _("功能模塊名稱");include_once("inc/header.inc.
31、php");/ 如有HTML代碼輸出則包含?><body class="bodycolor"><?$query = "SELECT * from USER where USER_ID='admin'"$cursor= exequery(TD:conn(),$query); /*exequery 是OA系統inc/conn.php包裝的SQL語句執行函數,TD:conn()n是數據庫的連接標識符*/if($ROW=MySQL_fetch_array($cursor)$DEPT_ID=$ROW"DE
32、PT_ID"echo "admin用戶所在部門為:<u>".dept_long_name($DEPT_ID)."</u>"?></body></html>執行效果如下圖:從這段程序可以看出,使用OA系統提供的系統頭文件和函數,訪問數據庫將是一件很輕松的事,不用操心數據庫的連接參數等問題,只需簡單的寫下SQL語句,執行它。MySQL數據庫的連接參數在 MYOAwebrootincoa_config.php文件中配置,如果自己安裝MySQL數據庫,可自行修改連接參數。第四章 內置函數參考4.1
33、utility.php4.1.1 Message函數原型:Message($TITLE, $CONTENT, $STYLE="" , $BUTTONS=array()功能描述:輸出一個信息提示框的HTML代碼參數:$TITLE/信息框標題$CONTENT/信息框提示信息$STYLE/信息框樣式,可選的值有error、warning、stop、forbidden、help、info$BUTTONS/操作按鈕數組返回值:無4.1.2 Button_Back函數原型:Button_Back($HTML_CHARSET = '')功能描述:輸出一個返回按鈕的HTML
34、代碼參數:$HTML_CHARSET/解析編碼返回值:無4.1.3 find_id函數原型:find_id($STRING, $ID)功能描述:在字符串$STRING中查找子串$ID參數:$STRING/以英文逗號(,)連接的N個ID值的一個字符串,如a,b,c,d$ID/要查找的子符串,如c返回值:找到則返回true,否則返回false,布爾值4.1.4 get_client_ip函數原型:get_client_ip()功能描述:獲取用戶的客戶端IP地址參數:無返回值:用戶的客戶端IP地址字符串4.2 utility_all.php4.2.1 csubstr函數原型:csubstr(&
35、;$str, $start=0, $long=0, $ltor=true, $cn_len=2)功能描述:截取中文字符串參數:$str/要截取的字符串$start/截取起始位置,默認從頭開始$long/要截取的長度$ltor/系統保留$cn_len/系統保留返回值:截取后的中文字符串。4.2.2 is_ip函數原型:is_ip($IP)功能描述:判斷一個字符串是否是一個合法的IP地址參數:$IP/IP地址字符串返回值:如果$IP是一個IP地址則返回true,否則返回false。4.2.3 add_log函數原型:add_log($TYPE,$REMARK,$OPERATOR)功能描述:添加系統
36、日志參數:$TYPE/日志類型代碼,參考系統代碼設置下的“系統日志類型”$REMARK/備注$OPERATOR/產生日志的用戶的用戶名,一般為當前用戶返回值:無4.2.4 get_code_name函數原型:get_code_name($CODE_NO,$PARENT_NO)功能描述:獲取系統代碼的描述參數:$CODE_NO/系統代碼的代碼值,如果多個代碼則用英文逗號串起來$PARENT_NO/父類型代碼值返回值:對應代碼值的文字描述示例代碼:echo get_code_name('0','SMS_REMIND');/輸出“個人短信”echo get_code_
37、name('0,1','SMS_REMIND');/輸出“個人短信,公告通知”4.2.5 dept_long_name函數原型:dept_long_name($DEPT_ID)功能描述:獲取部門ID為$DEPT_ID的多級部門名稱參數:$DEPT_ID/部門ID返回值:$DEPT_ID對應的部門長名稱,如“系統處/OA開發組”4.2.6 get_sys_para函數原型:get_sys_para($PARA_NAME_STR, $USE_CACHE = true)功能描述:獲取系統參數設置的參數值并返回一個數組參數:$PARA_NAME_STR/系統參數名稱字符
38、串,多個的話用英文逗號隔開$USE_CACHE/是否從緩存中獲取返回值:系統參數值的數組代碼示例:$PARA_ARRAY=get_sys_para("MENU_DISPLAY,MENU_EXPAND_SINGLE");$PARA_ARRAY為array( "MENU_DISPLAY" => "1", "MENU_EXPAND_SINGLE" => "0");4.2.7 set_sys_para函數原型:set_sys_para($PARA_ARRAY)功能描述:批量設置系統參數參數:
39、$PARA_ARRAY/系統參數數組,數組鍵值為參數名,如array("MENU_DISPLAY"=>"1")返回值:無4.3 utility_org.php4.3.1 is_dept_parent函數原型:is_dept_parent($DEPT_ID,$PARENT_ID)功能描述:判斷一個部門是否是另外一個部門的上級部門參數:$DEPT_ID/要判斷的部門ID$PARENT_ID/上級部門ID返回值:是則返回true,否則返回false。4.3.2 top_dept函數原型:top_dept($DEPT_ID)功能描述:獲取部門ID為$DEP
40、T_ID的部門的最上級部門的ID。參數:$DEPT_ID/部門ID返回值:最上級部門的ID。4.3.3 GetDeptNameById函數原型:GetDeptNameById($ID_STR)功能描述:獲取N個部門的部門名稱。參數:$ID_STR/N個部門的ID,用逗號串起來,如“1,2,”返回值:N個部門名稱字符串,用逗號串起來,如“系統部,OA開發組”。4.3.4 GetPrivNameById函數原型:GetPrivNameById($ID_STR)功能描述:獲取N個角色的角色名稱。參數:$ID_STR/N個角色的ID,用逗號串起來,如“1,2,”返回值:N個角色名稱字符串,用逗號串起來
41、,如“OA管理員,職員”。4.3.5 GetUserNameById函數原型:GetUserNameById($ID_STR)功能描述:獲取N個用戶的用戶姓名。參數:$ID_STR/N個用戶的用戶名,用逗號串起來,如“admin,lqh,”返回值:N個用戶的真實姓名字符串,用逗號串起來,如“系統管理員,劉清華”。4.3.6 GetUserNameByUid函數原型:GetUserNameByUid($ID_STR)功能描述:獲取N個用戶的用戶姓名。參數:$ID_STR/N個用戶的數字,用逗號串起來,如“1,2,”返回值:N個用戶的真實姓名字符串,用逗號串起來,如“系統管理員,劉清華”。4.3.
42、7 my_exclude_uid函數原型:my_exclude_uid()功能描述:獲取當前用戶不能與之通訊的用戶的數字ID(UID)。參數:無返回值:當前用戶不能與之通訊的用戶的數字ID(UID)。4.4 utility_sms1.php4.4.1 send_sms函數原型:send_sms($SEND_TIME,$FROM_ID,$TO_ID,$SMS_TYPE,$CONTENT,$REMIND_URL="")功能描述:發送內部短消息。參數:$SEND_TIME/發送時間字符串,如“2013-11-20 09:00:00”$FROM_ID/發送人用戶名,如“admin”
43、$TO_ID/接收人用戶名用逗號串起來的字符串,如“lqh,lxq”$SMS_TYPE/短信類型代碼,參考系統代碼設置下的“內部短消息類型”$CONTENT/短信內容$REMIND_URL/點擊短信提醒彈出窗口的“查看詳情”打開的地址返回值:無4.4.2 delete_sms函數原型:delete_sms($SMS_ID_STR,$DEL_TYPE)功能描述:刪除內部短消息。參數:$SMS_ID_STR/要刪除的短信ID串,用逗號串起來,如“1,2,3”$DEL_TYPE/DEL_TYPE=1 刪除收到的短信,DEL_TYPE=2 刪除發送的短信返回值:無4.5 utility_sms2.ph
44、p4.5.1 send_mobile_sms_user函數原型:send_mobile_sms_user($SEND_TIME,$FROM_ID,$TO_ID,$CONTENT,$TYPE)功能描述:給OA用戶發送手機短信。參數:$SEND_TIME/發送時間字符串,如“2013-11-20 09:00:00”$FROM_ID/發送人用戶名,如“admin”$TO_ID/接收人用戶名用逗號串起來的字符串,如“lqh,lxq”$CONTENT/短信內容$TYPE/短信類型代碼,參考系統代碼設置下的“內部短消息類型”返回值:無4.5.2 send_mobile_sms函數原型:send_mobil
45、e_sms($SEND_TIME,$FROM_ID,$PHONE,$CONTENT)功能描述:向指定號碼發送手機短信。參數:$SEND_TIME/發送時間字符串,如“2013-11-20 09:00:00”$FROM_ID/發送人用戶名,如“admin”$PHONE/接收手機號碼字符串,如“138xxxxxxxx,139xxxxxxxx”$CONTENT/短信內容返回值:無4.6 utility_file.php4.6.1 upload函數原型:upload($PREFIX="ATTACHMENT",$MODULE="" , $OUTPUT=true)功
46、能描述:上傳附件,可以一次上傳多個附件。參數:$PREFIX/表單File控件名稱的前綴,一般為默認即可$MODULE/模塊代碼,如內部郵件為email,為空則根據程序路徑自動判斷$OUTPUT/參數判斷返回值:無4.6.2 delete_attach函數原型:delete_attach($ATTACHMENT_ID,$ATTACHMENT_NAME,$MODULE="")功能描述:刪除附件,可以一次刪除多個附件。參數:$ATTACHMENT_ID/附件ID,多個附件ID用逗號隔開$ATTACHMENT_NAME/附件名稱,多個附件名稱用*號隔開$MODULE/模塊代碼,如
47、內部郵件為email,為空則根據程序路徑自動判斷斷返回值:無4.6.3 attach_size函數原型:attach_size($ATTACHMENT_ID,$ATTACHMENT_NAME,$MODULE="")功能描述:獲取附件大小。參數:$ATTACHMENT_ID/附件ID$ATTACHMENT_NAME/附件名稱$MODULE/模塊代碼,如內部郵件為email,為空則根據程序路徑自動判斷斷返回值:附件大小,單位字節。4.6.4 copy_attach函數原型:copy_attach($ATTACHMENT_ID,$ATTACHMENT_NAME,$MODULE_S
48、RC="",$MODULE_DESC="", $ID_IS_REAL = true)功能描述:拷貝一個或多個附件。參數:$ATTACHMENT_ID/附件ID,多個附件ID用逗號隔開$ATTACHMENT_NAME/附件名稱,多個附件名稱用*號隔開$MODULE_SRC/原附件所屬模塊代碼,為空則根據程序路徑自動判斷斷$MODULE_DESC/新附件所屬模塊代碼,為空則根據程序路徑自動判斷斷$ID_IS_REAL/$ATTACHMENT_ID是文件的真實ID,還是attach_id_decode過之后的,數據庫中存的一般是真實的返回值:新附件的附件ID串
49、,多個附件的話用逗號隔開。4.6.5 is_uploadable函數原型:is_uploadable($FILE_NAME)功能描述:根據附件名稱判斷該類型的文件是否允許上傳。參數:$FILE_NAME/要判斷的文件名返回值:允許上傳則返回true,否則返回false。4.6.6 is_text函數原型:is_text($FILE_NAME)功能描述:根據附件名稱判斷該類型的文件是否是文本文件。參數:$FILE_NAME/要判斷的文件名返回值:是文本文件則返回true,否則返回false。4.6.7 is_office函數原型:is_office($FILE_NAME)功能描述:根據附件名稱判
50、斷該類型的文件是否是Office文檔。參數:$FILE_NAME/要判斷的文件名返回值:是Office文檔則返回true,否則返回false。4.6.8 is_image函數原型:is_image($FILE_NAME)功能描述:根據附件名稱判斷該類型的文件是否是圖片。參數:$FILE_NAME/要判斷的文件名返回值:是圖片則返回true,否則返回false。4.6.9 is_viewable函數原型:is_viewable($FILE_NAME)功能描述:根據附件名稱判斷該類型的文件是否可以直接瀏覽,如htm、pdf、圖片等。參數:$FILE_NAME/要判斷的文件名返回值:可以直接瀏覽則返
51、回true,否則返回false。4.6.10 is_media函數原型:is_media($FILE_NAME)功能描述:根據附件名稱判斷該類型的文件是否是媒體文件,如視頻、音頻文件等。參數:$FILE_NAME/要判斷的文件名返回值:RealPlayer播放類型返回1,如rm、rmvb等MediaPlayer播放類型返回2,如wmv、mpeg等可直接在瀏覽器里打開的類型返回3,如圖片、pdf、html等Flash播放類型返回4,如flv,fla等其它返回04.6.11 dir_size函數原型:dir_size($dir)功能描述:根據目錄路徑返回其下屬子目錄和文件的大小。參數:$dir/服
52、務器目錄路徑,如D:/MYOA返回值:目錄大小,單位字節。4.6.12 delete_dir函數原型: delete_dir($DIR, $RECYCLE = true, $MODULE = "") 功能描述: 根據目錄路徑刪除該目錄及其所有下屬子目錄和文件。 參數: $DIR /服務器目錄路徑,如D:/MYOA $RECYCLE/刪除目錄和文件前,是否放到oa指定的回收目錄,true放到回收目錄 $MODULE /指定回收目錄的模塊代碼返回值: 無4.6.13 attach_sub_dir函數原型:attach_sub_dir()功能描述:根據程序路徑判斷其所屬模塊。參數
53、:無返回值:附件所屬模塊代碼,如在/general/email/new/submit.php中調用該函數則返回email。4.6.14 attach_real_path函數原型:attach_real_path($ATTACHMENT_ID,$ATTACHMENT_NAME,$MODULE="")功能描述:根據附件的ID、名稱等獲取該附件在服務器上存儲的物理路徑。參數:$ATTACHMENT_ID/附件ID$ATTACHMENT_NAME/附件名稱$MODULE/附件所述模塊代碼返回值:附件在服務器上的物理路徑,如D:/MYOA/attach/email/1311/123456789.二次開發手冊.doc。4.6.15 attach_id_encode函數原型:attach_id_encode($ATTACHMENT_ID,$ATTACHMENT_NA
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
評論
0/150
提交評論