|
|
导航: |
论坛 -> Web应用开发
斑竹:bodies |
|
作者: |
|
2009/9/14 20:07:51 |
标题: |
|
加入我的收藏 |
楼主: |
unction oa_get_register_code( $MACHINE_CODE_STR ) { $REGISTER_CODE_STR1 = md5( $MACHINE_CODE_STR ); $REGISTER_CODE_STR1 = md5( $REGISTER_CODE_STR1 ); $I = 0; for ( ; $I < strlen( $REGISTER_CODE_STR1 ); ++$I ) { $STR = substr( $REGISTER_CODE_STR1, $I, 1 ); $REGISTER_CODE_STR2 .= ord( $STR ) + 2; } $REGISTER_CODE_STR2 = strrev( ( substr( $REGISTER_CODE_STR2, 0, 5 ).substr( $REGISTER_CODE_STR2, -5 ) ) * 8 ); $REGISTER_CODE_STR2 = substr( $REGISTER_CODE_STR2, -3 ).substr( $REGISTER_CODE_STR2, 0, 5 ); $REGISTER_CODE_STR2 = str_replace( "0", "2", $REGISTER_CODE_STR2 ); $REGISTER_CODE_STR2 = str_replace( "5", "6", $REGISTER_CODE_STR2 ); $REGISTER_CODE_STR2 = str_replace( "4", "9", $REGISTER_CODE_STR2 ); return $REGISTER_CODE_STR2; 主要是不明白这一句:$REGISTER_CODE_STR2 = strrev( ( substr( $REGISTER_CODE_STR2, 0, 5 ).substr( $REGISTER_CODE_STR2, -5 ) ) * 8 ); 字符串和8相乘是什么结果,如果machine-code-str是1a2b3c4d,则结果是什么?
----------------------------------------------
test |
作者: |
|
2010/1/22 12:56:49 |
1楼: |
$REGISTER_CODE_STR2 = strrev( ( substr( $REGISTER_CODE_STR2, 0, 5 ).substr( $REGISTER_CODE_STR2, -5 ) ) * 8 );
很好理解,首先strrev是把字符串逆序排序,substr( $REGISTER_CODE_STR2, 0, 5 ).是返回$REGISTER_CODE_STR2变量从第0位开始的5位字符
----------------------------------------------
我爱Delphi,永远的Delphi,哪怕Delphi淘汰了,出局了,被世人淡忘了我也爱,除非我死了否则就是爱Delphi
|
|