0

PHPでこの行

      for($i = 0; $i < strlen($string); $i++){
        $keychar = substr($key, ($i % strlen($key))-1,1);
        echo $keychar;
    }
returns `70684292517 `

そして、これと同等のものをobjective-cで作成すると、まったく異なる値が返されます。

 for (int i = 0; i < string.length; i++) {
        NSString *_keychar = [key substringWithRange:NSMakeRange((i % key.length)-1,1)];
//The fix
NSString *_keychar = [key substringWithRange:NSMakeRange(((i % key.length) ? (i % key.length) : (key.length) )-1,1)];
        NSLog(@"%@",_keychar);
    }

    returns `068429251`

では、obj-c コードが php コードと同じ値を返さないのはなぜですか (どうあるべきか)。私は何を間違っていますか?文字列の長さは 11 で、キーの値は 0684292517 です。

修繕

4

0 に答える 0