这JB代码到底想干嘛?

php中文网
发布: 2016-06-23 13:58:30
原创
1102人浏览过

$ln = $this->lengthIndicator($this->QR_MODE_NM, $this->version);$dif = $this->estimateBitsModeNum($run) + 4 + $ln			+ $this->estimateBitsMode8(1)         // + 4 + l8			- $this->estimateBitsMode8($run + 1); // - 4 - l8			if ($dif > 0) {				return $this->eat8();			}function estimateBitsModeNum($size) {		$w = (int)$size / 3;		$bits = $w * 10;		switch($size - $w * 3) {			case 1: {				$bits += 4;				break;			}			case 2: {				$bits += 7;				break;			}			default: {				break;			}		}		return $bits;	}function estimateBitsMode8($size) {		return $size * 8;	}function lengthIndicator($mode, $version) {		if ($mode == $this->QR_MODE_ST) {			return 0;		}		if ($version <= 9) {			$l = 0;		} elseif ($version <= 26) {			$l = 1;		} else {			$l = 2;		}		return $this->lengthTableBits[$mode][$l];	}$lengthTableBits = array(		array(10, 12, 14),		array( 9, 11, 13),		array( 8, 16, 16),		array( 8, 10, 12)	);
登录后复制


回复讨论(解决方案)

你这断章取义的,谁知到在干什么

代码不完整,看不出这JB代码到底想干嘛。

爱干嘛干嘛,接分!

得了,结账吧

完全看不懂!

生成二维码的吧

生成二维码的吧

真是遇见高手了。求解释

这代码太短了,好像是二维码

这代码太短了,好像是二维码

为什么eat12,14的情况。

不懂二维码的原理,看代码能看懂么?
Numeric mode 数字编码,从0到9。如果需要编码的数字的个数不是3的倍数,那么,最后剩下的1或2位数会被转成4或7bits,则其它的每3位数字会被编成 10,12,14bits    对应你的 estimateBitsModeNum
不同version下编码的位数:
对应你的 lengthIndicator

我也不懂,帮你找的资料: http://coolshell.cn/articles/10590.html#jtss-tsina

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号