V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
08110920
V2EX  ›  问与答

PHP 解析二维码速度咋这么慢??

  •  
  •   08110920 · 2022-09-04 13:16:49 +08:00 · 2000 次点击
    这是一个创建于 804 天前的主题,其中的信息可能已经有所发展或是发生改变。
    include_once('./lib/QrReader.php');
    ini_set('memory_limit', '-1');
    $qrcode = new QrReader('./1.jpg');
    $text = $qrcode->text();



    php7.4 运行一下要等好几秒以上才能解析好。


    php 有啥更好的解决办法吗?
    14 条回复    2022-09-04 20:10:05 +08:00
    Torpedo
        1
    Torpedo  
       2022-09-04 13:49:42 +08:00
    不能让前端解吗?🐶
    ixixi
        2
    ixixi  
       2022-09-04 13:51:43 +08:00 via Android
    试下 php8.1 开启 jit 可能会快一些
    wd
        3
    wd  
       2022-09-04 13:54:08 +08:00 via iPhone
    你在那个方法前后统计下时间看看,可能是 runtime 启动慢
    08110920
        4
    08110920  
    OP
       2022-09-04 13:55:36 +08:00
    @wd 11.349539041519 秒

    microtime
    wd
        5
    wd  
       2022-09-04 13:56:42 +08:00 via iPhone
    那是慢.. 不知道是不是可以 trace 下哪里慢..
    wd
        6
    wd  
       2022-09-04 13:56:58 +08:00 via iPhone
    11 秒是吗?
    08110920
        7
    08110920  
    OP
       2022-09-04 14:05:44 +08:00
    @wd 嗯 以为是服务器不行,换了个 4 核 24G 的服务器来运行 还是一样慢。
    Rache1
        8
    Rache1  
       2022-09-04 14:07:41 +08:00
    不知道你用的哪个库解析,我这里测试两百多个字符的二维码,解析都算比较快的。

    测试环境:PHP 7.1

    khanamiryan/qrcode-detector-decoder - Packagist
    https://packagist.org/packages/khanamiryan/qrcode-detector-decoder#1.0.5.2

    zhaokun
        9
    zhaokun  
       2022-09-04 14:17:20 +08:00 via iPhone
    大概率是代码问题,换识别库
    08110920
        10
    08110920  
    OP
       2022-09-04 14:26:16 +08:00
    @Rache1 7.4 提示这个 Parse error: syntax error, unexpected '|', expecting variable (T_VARIABLE) in /www/wwwroot/api.111.cn/vendor/khanamiryan/qrcode-detector-decoder/lib/QrReader.php on line 16

    只能 7.1 运行?
    Rache1
        11
    Rache1  
       2022-09-04 15:13:34 +08:00
    @08110920 如果是 composer 安装,PHP 7.x 的安装 1.0.5.2 版本。

    composer require khanamiryan/qrcode-detector-decoder=1.0.5.2

    手动安装的,去 Github 仓库的 Release 下载

    https://github.com/khanamiryan/php-qrcode-detector-decoder/releases/tag/1.0.5.2
    08110920
        12
    08110920  
    OP
       2022-09-04 17:21:59 +08:00
    @Torpedo 现在再找例子。 php 是因为图片上还有其他的东西,所以二维码慢一些,如果只是二维码图,速度就很快了。
    IDAEngine
        13
    IDAEngine  
       2022-09-04 18:32:38 +08:00
    哪有这么慢的,一般 50ms 左右
    08110920
        14
    08110920  
    OP
       2022-09-04 20:10:05 +08:00
    @IDAEngine 图的问题,不是纯二维码图,图上还有文字等等其他信息,所以解析慢了。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1128 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 18:50 · PVG 02:50 · LAX 10:50 · JFK 13:50
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.