いや 何をいってるかわからないとおもうが。。。(ry
なんでこんなことしなきゃいけないのかわかりませんが、
文字列が必ず毎回同じ(int)数値になるようにしなきゃいけなくなりまして。
こんな感じでかいてみました。
$word2Int = (int)("1".substr(preg_replace("/[^0-9]+/","",md5($word)),1,9));
一応コメントをつけるとすれば
文字列をmd5して、そこから0-9以外の数値を切り取って、
PHP_INT_MAXの値の桁数くらいまでに抑えるようにsubstrして
頭が0だと8進数になって8,9の数値がぶっ壊れるので適当に頭は1固定とかにして、
それを(string)から(int)キャストするかんじです。
こんなかんじ。
$word2Int[] = (int)("1".substr(preg_replace("/[^0-9]+/","",md5("ばかやろー")),1,9)); $word2Int[] = (int)("1".substr(preg_replace("/[^0-9]+/","",md5("あほやろー")),1,9)); $word2Int[] = (int)("1".substr(preg_replace("/[^0-9]+/","",md5("")),1,9)); var_dump($word2Int); array(3) { [0]=> int(1523827225) [1]=> int(1877443054) [2]=> int(1189800204) }
われながら気持ち悪いなw
書くことないとはいえ。
どうでもいいけどこれやばい
array_unique関数がPHP5.2.9から後方互換性を失いました – hnwの日記
だからPHPはカオスとか言われるんだよ。。。
ユニーク一つ満足に取れないとは
なんてユニークな言語になってしまったんだ。