function encodePass($lv_pass){
$lv_key1="54176382";
$lv_key2="1e4s2dj6l38 5097vw.";
$lv_key3="ab cdefghijklmn102p";
$lv_pass1 = " ";
for ($lv_i = 1; $lv_i <= 8; $lv_i++){
$lv_j = $lv_key1{$lv_i-1};
$lv_pass1 = substr($lv_pass1,0,$lv_i-1).$lv_pass{$lv_j-1}.substr($lv_pass1,$lv_i-8,8-$lv_i);
}
$lv_pass = $lv_pass1;
for ($lv_i = 1; $lv_i <= 8; $lv_i++){
for ($lv_j = 1; $lv_j <= 19; $lv_j++){
if ($lv_pass{$lv_i-1} == $lv_key2{$lv_j-1}){
$lv_pass1 = substr($lv_pass1,0,$lv_i-1).$lv_key3{$lv_j-1}.substr($lv_pass1,$lv_i-8,8-$lv_i);
}
}
}
return $lv_pass1;
}
$lv_key1="54176382";
$lv_key2="1e4s2dj6l38 5097vw.";
$lv_key3="ab cdefghijklmn102p";
$lv_pass1 = " ";
for ($lv_i = 1; $lv_i <= 8; $lv_i++){
$lv_j = $lv_key1{$lv_i-1};
$lv_pass1 = substr($lv_pass1,0,$lv_i-1).$lv_pass{$lv_j-1}.substr($lv_pass1,$lv_i-8,8-$lv_i);
}
$lv_pass = $lv_pass1;
for ($lv_i = 1; $lv_i <= 8; $lv_i++){
for ($lv_j = 1; $lv_j <= 19; $lv_j++){
if ($lv_pass{$lv_i-1} == $lv_key2{$lv_j-1}){
$lv_pass1 = substr($lv_pass1,0,$lv_i-1).$lv_key3{$lv_j-1}.substr($lv_pass1,$lv_i-8,8-$lv_i);
}
}
}
return $lv_pass1;
}
String lv_key1="54176382";
String lv_key2="1e4s2dj6l38 5097vw.";
String lv_key3="ab cdefghijklmn102p";
String lv_pass1 = " ";
for(int lv_i = 1; lv_i <= 8; lv_i++){
lv_j = lv_key1.subString(lv_i-2,lv_i-1);
lv_pass1 = lv_pass1.subString(0,lv_i-1)+lv_pass.subString(lv_j-2,lv_j-1)+lv_pass1.subString(lv_i-8,8-lv_i);
}
lv_pass = lv_pass1;
for (int lv_i = 1; lv_i <= 8; lv_i++){
for (int lv_j = 1; lv_j <= 19; lv_j++){
if (lv_pass.subString(lv_i-2,lv_i-1) == lv_key2.subString(lv_j-2,lv_j-1)){
lv_pass1 = lv_pass1.subString(0,lv_i-1)+lv_key3.subString(lv_j-2,lv_j-1)+lv_pass1.subString(lv_i-8,8-lv_i);
}
}
}
return lv_pass1;
}
这样的,我这边有3个问题
1. 从i=1的时候,$lv_j = $lv_key1{$lv_i-1};这边$lv_j是不是5,如果PHP的下标也是从0开始的话;
2. java对于string.substring(0,0)这种开头和结束的位置一样的截取方式是报错的;
3. substr($lv_pass1,$lv_i-8,8-$lv_i)怎么理解,当i=1的时候,substr($lv_pass1,-7,7)怎么看谢谢
2、Java中 substring 参数好像是 起始位置 终止位置。好像也有 substr 吧
3、substr 的参数 待截取的串 起始位置 长度
substr($lv_pass1,-7,7) 返回 $lv_pass1 的倒数第7个字符开始的7个字符