Как я могу преобразовать слова в числа в PHP? - PullRequest
2 голосов
/ 19 июня 2010

Первый метод, который приходит на ум, - это чтение каждого символа и преобразование его в значение ASCII.Есть ли другие способы сделать это?Я хотел бы иметь возможность дать php-скрипту строку и заставить ее каждый раз превращать одну и ту же строку (которая может содержать или не содержать числа или символы) в один и тот же ряд чисел.

Ответы [ 4 ]

2 голосов
/ 19 июня 2010

Итак, вы говорите о хешировании.
MD5 () или (или sha1 (), как настаивают некоторые местные параноики) могут дать вам это число. Хотя шестнадцатеричный. Я надеюсь, что это будет соответствовать вашим неясным целям.

1 голос
/ 19 июня 2010

Это сработает (но я не уверен, полностью ли я понял, что вы хотите сделать):

function string2num($in_str) {
    $out_str = '';
    $chars = unpack('c*', $in_str);

    foreach($chars as $char) {
        $out_str .= $char;
    }

    return $out_str;
}

// Outputs:
// 8410410511532105115329732115116114105110103

$num = string2num('This is a string');
print "$num\n";
0 голосов
/ 19 июня 2010

Можете ли вы предоставить некоторые границы для этой функции? Нужно ли делать дроби или дроби? Или числа меньше нуля? Как высоко это должно было бы пойти? Только на английском?

0 голосов
/ 19 июня 2010

Может быть, вы хотите прочитать о типах и жонглировании ?

...