Php function bcpow alternatif nedir?

0 Cevap

Ben bu kılavuzu kullanarak ediyorum - http://kevin.vanzonneveld.net/techblog/article/create_short_ids_with_php_like_youtube_or_tinyurl/

URL için kısa kodları oluşturmak için.

Ama bcpow () benim sistemde zaten çalışmıyor.

Php-cli ve phpinfo () kullanıyorum; BCMath yüklü gösterir.

SHORTCODE Sayısal -

function aplhaIdCalc( $in ) {
    $index = "abcdefghijklmnopqrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";        
    $base = 62;
    $out = "";
    for ($t = floor(log($in, $base)); $t >= 0; $t--) {
      $bcp = bcpow($base, $t);
      $a   = floor($in / $bcp) % $base;
      $out = $out . substr($index, $a, 1);
      $in  = $in - ($a * $bcp);
    }
    $out = strrev($out); // reverse
    return $out;
}

Sayısal için SHORTCODE -

function idAlphaCalc( $in ) {
    $index = "abcdefghijklmnopqrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";        
    $base = 62;
    $in  = strrev($in);
    $out = 0;
    $len = strlen($in) - 1;
    for ($t = 0; $t <= $len; $t++) {
      $bcpow = bcpow($base, $len - $t);
      $out   = $out + strpos($index, substr($in, $t, 1)) * $bcpow;
    }
    $out = sprintf('%F', $out);
    $out = substr($out, 0, strpos($out, '.'));
    return $out;
}

Nasıl bcpow olmadan bu fonksiyonları kullanmak ve henüz benzeri çıkışını ve girişini alabilirim?

Ben bu BCMath işlevleri anlayamıyorum ama ben base_convert çalışabilir düşünüyorum.

Edit: bcpow pow eserler için değiştirme. pow kullanarak riskleri nelerdir?

0 Cevap