[PHP] 純文本查看 復制代碼
<?php
( h, _ k, a8 Z
, q" R! z" f$ Jif (!defined('IN_DISCUZ')) {
4 J5 r: G$ U5 d/ n exit('Access Denied');- T3 Y' D- t0 _- ]
}
# p4 n, U/ G$ e+ b: u8 e3 M# O
0 s7 o0 ^" U2 XC::import('class/plugin', 'plugin/xinxiuvip_network_plugin', false); //引入系統核心類
2 ~- P# K* O/ ?) @; H8 l, G, Q% {( \; x
class extend_network extends class_plugin! m! l* O$ g. i7 ], _$ |# Q- K
{- R2 ^0 t. F7 S) t# |
1 h; j5 `$ L- Y0 Q! H
public function __construct() //構造方法
9 L9 ?8 y) @, U ~ {
6 m* }- q# S( s, r parent::__construct(false);
& s3 T) M( Z0 g' z }
6 ?# }, A# u& \: Q9 F) s5 l" n& p! ` /**
# y* C- u( a2 x: F% A- ~$ a * ##創建插件的安裝代碼
4 M: F8 [& K. I * 1、此處代碼以創建數據庫表為主,提前創建插件需要的數據庫表及字段!
1 b/ Q; y; V3 N- z9 |: v7 S9 _/ F4 w9 v * 2、在這里也可以添加一些插件自定義php代碼,系統自動執行!
5 T; |5 x0 _3 p) ^0 @ * 3、如果不需要執行代碼,直接返回true即可,實例:return true;! j4 u( x/ C8 q# i* M
*/
) r- E) E/ R6 u# H( n! G$ b. d public function hook_plugin_install() //插件安裝代碼9 I+ ?* L) Q0 U7 B7 p% e- A3 ^
{( y2 ~/ N( u7 U ~! @) f
$sql = <<<EOF
1 c7 {, Q( O7 U7 n- p8 u CREATE TABLE IF NOT EXISTS `pre_xinxiuvip_plugin_ip` (
- z8 \4 K( ]% g( L( i `id` BIGINT(16) unsigned NOT NULL AUTO_INCREMENT,3 X* Q0 A& e3 p) N2 u, h! s
`text1` longtext NOT NULL,4 X2 k) c5 O' ~* {' W+ Q, h
PRIMARY KEY (`id`)
5 O' [' n/ l9 @: | ) ENGINE=InnoDB DEFAULT CHARSET=utf8 ;
% ?+ y' e( ~2 a l9 g* ~, s& jEOF;7 V% H, T9 K7 H( G
$sql ? web_mysql::xinxiuvip_plugin_run_sql($sql) : ''; //執行上面的多行SQL代碼;
0 o8 k! A- v h5 G! o return true; //創建結束9 Z; h6 `+ S& U/ u- o1 }
}
4 i& B3 L; m% T Z9 G# k0 `+ J /**& C, ^0 w9 I I" R: e
* ##更新插件的更新代碼; V; W; v; w# w8 E2 \' i' G
* 1、此處代碼以更新數據庫表為主,對安裝的數據庫表和字段進行更新!
$ v: e4 |& l% v- B, T! |# ^ * 2、在這里也可以添加一些插件自定義php代碼,系統自動執行!
6 m( } A) {& V, a" l * 3、如果不需要執行代碼,直接返回true即可,實例:return true;
8 v: u, J$ }$ L3 E: C# ~- j" Y+ @ */ M% e( R. n* s
public function hook_plugin_upgrade() //插件更新代碼
! G/ d+ Y; Q9 ` {
" r: Y y% U4 ~- F- ^2 o( R k, Y $sql = <<<EOF
: B: F' ^. B6 W6 t& a! d8 X: S CREATE TABLE IF NOT EXISTS `pre_xinxiuvip_plugin_ip` (
9 y$ S. K3 f0 y. J5 u+ x( N: N* @ s `id` BIGINT(16) unsigned NOT NULL AUTO_INCREMENT,; u4 ^2 Q1 u: [* [$ ?" J
`text1` longtext NOT NULL,$ s! A2 A* g2 o9 m
PRIMARY KEY (`id`)
$ y0 Q- B. h( ^7 E( r ) ENGINE=InnoDB DEFAULT CHARSET=utf8 ;
' z3 S# ^1 [2 N9 aEOF;5 d; O) @1 O: W& R' O
$sql ? web_mysql::xinxiuvip_plugin_run_sql($sql) : ''; //執行上面的多行SQL代碼;
, q' ?4 l$ V. N3 [1 ?+ E. V return true; //更新結束- B+ c1 m5 Z6 R2 f8 r j. N2 I
}: i1 T( ^7 W' M
/**
& c: c. O, Y* k# ^ * ##卸載插件的卸載代碼% X9 k4 d2 m% L, W* y x8 B( d: {) @
* 1、此處代碼以卸載數據庫表為主,對安裝的數據庫表和字段進行卸載!; p5 B3 k- F9 a/ f) `- x! I
* 2、在這里也可以添加一些插件自定義php代碼,系統自動執行!
4 t' M a7 K7 Q0 b * 3、如果不需要執行代碼,直接返回true即可,實例:return true;1 l$ g* \4 V: _2 t! O# J; a
*/
6 n% e8 |; E: ~* G( m# h public function hook_plugin_uninstall() //插件卸載代碼
6 _( ^, v% o: j* z, h$ ? {+ n [% @+ B( Y) U& i
$sql = <<<EOF( F5 @, `3 a) u
DROP TABLE IF EXISTS `pre_xinxiuvip_plugin_ip`;* @8 e A. r! ~! i5 |
EOF;5 ~& o1 y4 v; P- C
$sql ? web_mysql::xinxiuvip_plugin_run_sql($sql) : ''; //執行上面的多行SQL代碼;: u$ o6 q4 E/ o. b
return true; //更新結束
0 b- a% h8 Y0 q2 p* t& e! q) F3 q }
3 O6 L% q5 k' ]( Y4 ] /**
; S2 V. D, b g( L M S! H+ ]0 G( j * ##安裝插件的接口代碼- ]/ v) }# @4 O* p
* 1、此處代碼以添加插件接口為主,對插件封裝的接口,添加到數據庫!( C% v5 \, _0 x; P
* 2、如果不需要添加任何接口信息,直接返回false即可,實例:return false;
; ^# A2 }* S! W4 A7 r+ }5 w" m; i */
4 n' E. M" D8 x) g! U public function hook_plugin_actions_install() //插件安裝接口代碼
" Q. \4 F }- }; n9 f9 W% D {( g# K2 C- m$ }2 J- }
$actions_array = array(
1 E$ y' c3 d/ |) z" ` array(
7 _3 ~* W4 P+ W; z 'type' => 'ip模塊',//插件模塊
# ?, L4 z$ W0 J# v6 O 'name' => '查詢ip地址',//接口名稱
; Y7 Y% g$ y- O% ^. W 'actions' => 'ip_cha',//接口方法) d) R8 v' p$ s, W- r
'url' => 'http://www.5566wy.com/thread-556-1-1.html',//接口文檔% a: C, s& \5 S0 H
),
0 U& M( `3 r- \1 s4 p array(
9 E$ w- G' n, I' G; J! p 'type' => 'ip模塊1',//插件模塊9 H- o4 C$ T! }. X) S3 C a
'name' => '查詢ip地址1',//接口名稱
+ a4 X3 U$ {7 p- r1 U4 q+ i 'actions' => 'ip_cha1',//接口方法! S% C4 _# N1 a; g+ H
'url' => 'http://www.5566wy.com/thread-556-1-1.html',//接口文檔. U3 g* s Y9 |* m& |8 F
),
3 I* V" Z: i- W8 p# X- _% r# P; b8 R );9 @: F; f9 r6 I S) C8 H
return $actions_array;
6 m2 W: e6 r+ B/ R P3 i# `) @ }. m) X; B5 R& ^$ W
/**
6 f' y: ?- h+ u, r0 f& z } * ##更新插件的接口代碼5 \) E g3 z0 o+ ^& B* q, U
* 1、此處代碼以更新插件接口為主,對插件封裝的接口,更新到數據庫!
' s7 B6 F7 {, m! z * 2、如果不需要更新任何接口信息,直接返回false即可,實例:return false;% x1 p: i+ _$ i( f; V" o
*/
' v) y' h6 |9 X1 m( S$ I public function hook_plugin_actions_upgrade() //插件接口更新代碼 l6 F% Q: t* H4 M( {+ j3 z0 V3 l. O
{
+ @( D6 H0 b1 M5 [ $actions_array = array(
; @; T) ]! _1 i1 ^9 B array(6 i7 M. F6 ^) F @8 `& c5 \( v+ A
'type' => 'ip模塊2',//插件模塊 R b1 a# f. h9 l9 o
'name' => '查詢ip地址2',//接口名稱! X9 ~, v$ o, i& a+ D* B ~# q
'actions' => 'ip_cha2',//接口方法. I* g- K7 l4 I5 r5 f1 U
'url' => 'http://www.5566wy.com/thread-556-1-1.html',//接口文檔
8 x# F; b y) n- P! c6 \ ),
2 y3 N) w8 O4 h );3 X$ \/ P9 ~) B
return $actions_array;
7 d; n% A, K. G F" g }" H! @+ @, y1 D3 q* ] U; Q2 u
}
# \0 X* ?. [& x/ T$ D$ j