テストと学習の目的で、 https ://github.com/php/php-src :ext / standard/rand.cにあるphprand関数とmt_rand関数を変更したいと思いました。
rand関数が呼び出されるたびに固定出力を提供したかったので、この目的のためにコードを変更しました
PHPAPI long php_rand(TSRMLS_D)
{
long ret;
if (!BG(rand_is_seeded)) {
php_srand(GENERATE_SEED() TSRMLS_CC);
}
#ifdef ZTS
ret = php_rand_r(&BG(rand_seed));
#else
# if defined(HAVE_RANDOM)
ret = random();
# elif defined(HAVE_LRAND48)
ret = lrand48();
# else
ret = rand();
# endif
#endif
// ignoring the results coming from the calls above and
// returning a constant value
ret = 3264;
return ret;
}
編集済み
./configure
make
make install
そして最後にrand関数をasecho rand(3000,4000);
と呼び、それは常に。を返します3000
。
この関数を変更する方法は何でしょうか?TSRMLS_D
範囲パラメータはあるがないのはなぜですか?