url kısaltıcı modifikasyonu

1 Cevap

Im a php url kısaltıcı ile çalışan ve benim sorunum sadece 2 karakter (örneğin domain.com / XX) kadar kodları kısaltılması MAX sayısını yaratmasıdır. Ben 5 karakter (örneğin domain.com / XXXXX) kadar gitmek istiyorum

Ben, ilgili kodu bulundu inanıyorum, ama bu değişiklik için izin vermek için bunu değiştirmek için nasıl emin değil im

function decode_url_id($code)
    {	
    	$scheme = "abcdefghijklmnoprstuqwxvyz0123456789ABCDEFGHIJKLMNOPRSTQWXUVYZ";
    	$scheme_size = strlen($scheme);

    	$number  = 0;
    	$code_size = strlen($code);
    	$code = strrev($code);
    	for($i = 0; $i < $code_size; $i++)
    	{
    		$digit_value = strpos($scheme, $code[$i]);

    		$number += ($digit_value * pow($scheme_size, $i));
    	}

    	return $number;
    }

    function encode_url_id($number, $code="")
    {
    	$scheme = "abcdefghijklmnoprstuqwxvyz0123456789ABCDEFGHIJKLMNOPRSTQWXUVYZ";
    	$scheme_size = strlen($scheme);

    	if ($number >= $scheme_size)
    	{
    		$c = $number % $scheme_size;
    		$code .= $scheme[$c];
    		$number = floor($number / $scheme_size);

    		return encode_url_id($number, $code);
    	}
    	else 
    	{
    		$code .= $scheme[$number];
    		$code = strrev($code);
    	}

    	return $code;
    }

I yanlış ağaca havlıyor muyum?

1 Cevap

Neden sadece http://www.pgregg.com/projects/php/base_conversion/base_conversion.inc.phps ile veritabanındaki URL kimliği kodlamak değil.

Örnek kullanım:

$new_url = base_base2base($link_id, 10, 62);