이 글은 주로 PHP의 나머지(모듈로) 연산을 소개합니다. 이제 특정 참조 값이 있습니다. 필요한 친구들이 참조할 수 있습니다.
추천 매뉴얼: php 자율 학습 매뉴얼
먼저 다음 작은 사례를 살펴보겠습니다.
$n = 8.45; $result = $n*100; echo gettype($result); var_dump($result); echo intval($n*100).'<br>'; echo $result%100;
Output:
double float 845 844 44
이 결과를 보고 조금 놀랐나요?
사실 본질은 intval((double) 845) = 944; 위에서 remainder(모듈로) 연산자 %를 사용했고, 모듈로 연산자의 피연산자로 변환되었기 때문입니다. 연산 전에 정수로 (소수 부분 제거).
추천 관련 기사:
1.부동소수점 숫자에서 나머지를 가져오는 PHP 방법
2.php의 일반적인 연산자는 무엇입니까
관련 동영상 추천:
1.Dugu Jiujian (4)_PHP 동영상 튜토리얼
또한 모듈로 연산자 % 및 The의 결과 배당금의 부호(양수 및 음수 부호)는 동일합니다. 즉, $a(배당) % $b(제수) 의 결과는 동일한 부호를 갖습니다. 몇 가지 예를 살펴보겠습니다.
예:
echo (5 % 3)."\n"; echo (5 % -3)."\n"; echo (-5 % 3)."\n"; echo (-5 % -3)."\n";
출력:
2 2 -2 -2
나머지와 관련된 수학 함수 fmod()를 소개하겠습니다. 이 함수는 주로 부동 소수점 나머지를 반환합니다. 분할의.
float fmod ( float $x , float $y )
返回被除数(x
)除以除数(y
)所得的浮点数余数。余数()的定义是:x = i * y + r,其中 是整数。如果 y
是非零值,则 和 x
的符号相同并且其数量值小于 y
。 其实实质就是x/y的浮点数余数。
例子:
$x = 5; $y = 2; // $t = mod($x, $y);//Fatal error: Call to undefined function mod() echo '我是fmod($x, $y)输出的值:'.fmod($x, $y); echo "<br>"; echo '我是$x % $y输出的值:'.$x % $y;
结果:
我是fmod($x, $y)输出的值:1
我是$x % $y输出的值:1
$x = 5.8; $y = 2.5; // $t = mod($x, $y);//Fatal error: Call to undefined function mod() echo '我是fmod($x, $y)输出的值:'.fmod($x, $y); echo "<br>"; echo '我是$x % $y输出的值:'.$x % $y;
结果:
我是fmod($x, $y)输出的值:0.8
我是$x % $y输出的值:1
注意的是,PHP里并没有mod()函数,使用时应注意。
小结:
1、%求余的时候,就是先把运算之前的被除数和除数都转换成整数(除去小数部分)
2、fmod()就类似于数学里面的求余运算。
相关推荐:
위 내용은 PHP 나머지(모듈로) 연산의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!