返回列表 发帖
查看: 156|回复: 6

[X5开发特性] X5 里全新的类调用方式,命名空间

70

主题

218

回帖

556

积分

管理员

贡献
12 点
金币
41 个
发表于 2024-10-22 09:43:04 | 查看全部 |阅读模式
这是 X5 开发特性的第一讲,我们说下今天这回要说的是 X5 里全新的类调用方式,命名空间

在X5的插件目录如果你要写类,可以这样写多层:
  1. - /lib
  2.   - /lib_base.php
  3.   - /sub
  4.   - /sub/sub_base.php
  5.     - /ssub
  6.     - /ssub/ssub_base.php
复制代码
/lib/lib_sub.php 这么写

  1. <?php
  2. namespace sample;
  3. class lib_base {
  4. .....
复制代码
/lib/sub/sub_base.php 这么写
  1. <?php
  2. namespace sample\lib;
  3. class sub_base {
  4. ......
复制代码
这样不用再像以前那样  include 一堆文件了,而是可以直接用
  1. //调用插件类库
  2. $c = sample\lib_base::add(1,1);
  3. $c += sample\lib\sub_base::add(1,1);
  4. $c += sample\lib\sub\ssub_base::add(1,1);   
复制代码
用上了命名空间固然很爽,但是!要切记命名空间的特性
  1. <?php

  2. namespace sample;

  3. use discuz_table;
  4. use DB;
复制代码
不使用 use 是调用不到外部类的,除非你 \discuz_table::    \DB::

目前 sample 插件中数据库类已经用这种方式重新写了,并且新增了 t() 方法

这样写的好处是不言而喻,IDE 编辑器可直接识别直达

(X5 中的系统数据库类已经改造成了自带 t() 的方式了)

好了,今天这一节就说到这里!


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
回复

使用道具 举报

2

主题

45

回帖

157

积分

应用开发者

贡献
1 点
金币
89 个
发表于 2024-10-22 09:46:33 | 查看全部
沙发        
回复

使用道具 举报

1

主题

96

回帖

129

积分

应用开发者

贡献
0 点
金币
27 个
发表于 2024-10-22 09:46:45 | 查看全部
重大更新,很給力
回复

使用道具 举报

1

主题

9

回帖

35

积分

应用开发者

贡献
0 点
金币
22 个
发表于 2024-10-22 09:47:00 | 查看全部
前排支持
回复

使用道具 举报

4

主题

82

回帖

292

积分

版主

贡献
3 点
金币
107 个
发表于 2024-10-22 09:49:02 | 查看全部
猴哥牛叉
回复

使用道具 举报

40

主题

2951

回帖

5014

积分

应用开发者

Discuz! 运维

贡献
186 点
金币
667 个
QQ
发表于 2024-10-22 10:05:20 | 查看全部
猴哥牛逼
回复

使用道具 举报

10

主题

281

回帖

548

积分

应用开发者

贡献
5 点
金币
168 个
QQ
发表于 2024-10-23 09:29:44 | 查看全部
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 关注公众号
  • 有偿服务微信
  • 有偿服务QQ

手机版|小黑屋|Discuz! 官方交流社区 ( 皖ICP备16010102号 |皖公网安备34010302002376号 )|网站地图|star

GMT+8, 2025-4-30 15:03 , Processed in 0.071208 second(s), 12 queries , Redis On.

Powered by Discuz! W1.0 Licensed

Cpoyright © 2001-2025 Discuz! Team.

关灯 在本版发帖
有偿服务QQ
有偿服务微信
返回顶部
快速回复 返回顶部 返回列表