1--TEST-- 2gmp_sqrtrem() basic tests 3--SKIPIF-- 4<?php if (!extension_loaded("gmp")) print "skip"; ?> 5--FILE-- 6<?php 7 8try { 9 $r = gmp_sqrtrem(-1); 10 var_dump($r); 11} catch (\ValueError $e) { 12 echo $e->getMessage() . \PHP_EOL; 13} 14 15$r = gmp_sqrtrem("0"); 16var_dump(gmp_strval($r[0])); 17var_dump(gmp_strval($r[1])); 18 19$r = gmp_sqrtrem(2); 20var_dump(gmp_strval($r[0])); 21var_dump(gmp_strval($r[1])); 22 23$r = gmp_sqrtrem(10); 24var_dump(gmp_strval($r[0])); 25var_dump(gmp_strval($r[1])); 26 27$r = gmp_sqrtrem(7); 28var_dump(gmp_strval($r[0])); 29var_dump(gmp_strval($r[1])); 30 31$r = gmp_sqrtrem(3); 32var_dump(gmp_strval($r[0])); 33var_dump(gmp_strval($r[1])); 34 35$r = gmp_sqrtrem(100000); 36var_dump(gmp_strval($r[0])); 37var_dump(gmp_strval($r[1])); 38 39$r = gmp_sqrtrem("1000000"); 40var_dump(gmp_strval($r[0])); 41var_dump(gmp_strval($r[1])); 42 43$r = gmp_sqrtrem("1000001"); 44var_dump(gmp_strval($r[0])); 45var_dump(gmp_strval($r[1])); 46 47try { 48 $n = gmp_init(-1); 49 $r = gmp_sqrtrem($n); 50 var_dump($r); 51} catch (\ValueError $e) { 52 echo $e->getMessage() . \PHP_EOL; 53} 54 55$n = gmp_init(1000001); 56$r = gmp_sqrtrem($n); 57var_dump(gmp_strval($r[0])); 58var_dump(gmp_strval($r[1])); 59 60try { 61 var_dump(gmp_sqrtrem(array())); 62} catch (\TypeError $e) { 63 echo $e->getMessage() . \PHP_EOL; 64} 65 66echo "Done\n"; 67?> 68--EXPECT-- 69gmp_sqrtrem(): Argument #1 ($num) must be greater than or equal to 0 70string(1) "0" 71string(1) "0" 72string(1) "1" 73string(1) "1" 74string(1) "3" 75string(1) "1" 76string(1) "2" 77string(1) "3" 78string(1) "1" 79string(1) "2" 80string(3) "316" 81string(3) "144" 82string(4) "1000" 83string(1) "0" 84string(4) "1000" 85string(1) "1" 86gmp_sqrtrem(): Argument #1 ($num) must be greater than or equal to 0 87string(4) "1000" 88string(1) "1" 89gmp_sqrtrem(): Argument #1 ($num) must be of type GMP|string|int, array given 90Done 91