V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
branchzero
V2EX  ›  PHP

针对 PHP7 兼容的 Discuz! X3.2

  •  
  •   branchzero · 2015-12-05 18:07:19 +08:00 · 7928 次点击
    这是一个创建于 3311 天前的主题,其中的信息可能已经有所发展或是发生改变。
    https://github.com/branchzero/discuz-x32-php7
    改了一些不兼容的特性,强行兼容了一波 PHP7 。
    速度提升还是挺明显的。
    只弄了 UTF-8 的,其他版本自行比对吧。
    第 1 条附言  ·  2015-12-05 19:08:22 +08:00
    先说明一下吧
    function_admincp.php
    rewritedata
    function_threadsort.php
    showsorttemplate
    这两处暂时没想好该怎么改,不过不影响正常使用,其他地方应该能改的都改掉了。
    第 2 条附言  ·  2015-12-05 21:17:55 +08:00
    上面两处也改好了,不兼容的地方都搞定了,完工。
    22 条回复    2016-02-02 11:56:47 +08:00
    eoo
        1
    eoo  
       2015-12-05 18:26:52 +08:00 via Android
    哦买噶
    formatComb
        2
    formatComb  
       2015-12-05 18:28:18 +08:00
    拜 Branch 菊苣
    老师快教我 PHP
    fakesnow
        3
    fakesnow  
       2015-12-05 18:39:05 +08:00
    有什么已知问题么
    Hyperion
        4
    Hyperion  
       2015-12-05 18:42:07 +08:00
    preg_replace_callback 的效率更高啊,原来如此。
    branchzero
        5
    branchzero  
    OP
       2015-12-05 18:45:35 +08:00
    @Hyperion preg_replace 在 PHP7 下正则带 e 修饰符就无返回了,所以要改成用 preg_replace_callback =。=
    branchzero
        6
    branchzero  
    OP
       2015-12-05 18:47:24 +08:00
    @formatComb 别闹,前端菊苣,咱还想向你拜师学艺 233333
    branchzero
        7
    branchzero  
    OP
       2015-12-05 18:48:23 +08:00
    @fakesnow 测试暂时没碰到问题,不排除有没找到的问题。。。
    xiaome
        8
    xiaome  
       2015-12-05 18:58:25 +08:00
    所以说,这是改成 MySQLi 咯?
    Hyperion
        9
    Hyperion  
       2015-12-05 19:04:34 +08:00
    @branchzero 唉唉,奥,对… 受教

    看了下文档,原来 5.5 就被官方炸了。 基本也没有用过这个特性,刚知道…
    branchzero
        10
    branchzero  
    OP
       2015-12-05 19:05:12 +08:00
    @xiaome 是,自带 MySQLi ,不过看着嫌烦干脆把与 MySQL 有关的全部给干掉了。
    xiaome
        11
    xiaome  
       2015-12-05 19:20:10 +08:00
    安装页面就 500 额,在哪里可以看到问题呢
    http://lab.yubanmei.com/discuz-x32-php7-master/install/
    branchzero
        12
    branchzero  
    OP
       2015-12-05 19:38:16 +08:00
    @xiaome 修正了, install 给回档了。。。
    Zzzzzzzzz
        13
    Zzzzzzzzz  
       2015-12-05 21:33:55 +08:00   ❤️ 1
    建议本地生成 diff 之后放 github 仓库或者 gist 吧, discuz 每个文件都注明非自由软件, 版权归康盛所有, 而且我记得 discuz 的协议里有写禁止衍生分发, 建立分支可能会有法务问题.
    branchzero
        14
    branchzero  
    OP
       2015-12-05 21:36:52 +08:00
    @Zzzzzzzzz 多谢建议,等会儿去改。真没注意看协议的说。
    kookxiang
        15
    kookxiang  
       2015-12-06 10:19:25 +08:00
    拜菊苣
    helihuo
        16
    helihuo  
       2015-12-06 19:26:30 +08:00
    顶起来,让多点人试试看
    iMboya
        17
    iMboya  
       2015-12-10 09:54:49 +08:00
    请问修改后对 discuz 上安装的第三方插件使用是否有影响?网站安装插件比较多,一时不太敢更新。
    branchzero
        18
    branchzero  
    OP
       2015-12-10 10:34:19 +08:00
    @kookxiang 鸭梨山大 TAT
    branchzero
        19
    branchzero  
    OP
       2015-12-10 10:34:43 +08:00
    @iMboya 第三方插件可能需要做一些改动
    iMboya
        20
    iMboya  
       2015-12-10 14:30:31 +08:00
    @branchzero 好吧,只能等等这些插件作者更新了。
    branchzero
        21
    branchzero  
    OP
       2015-12-10 14:41:30 +08:00   ❤️ 1
    @iMboya 大部分插件应该是兼容的,主要还是 preg_replace 带 e 修饰符的问题,不过这个很少有用到的,你可以先装插件试试,不行再禁用就是了。
    aprikyblue
        22
    aprikyblue  
       2016-02-02 11:56:47 +08:00
    膜拜菊苣
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2614 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 03:35 · PVG 11:35 · LAX 19:35 · JFK 22:35
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.