2016-09-21 3 views
0

신뢰할 수있는 문자열을 계산하지만, 문자열PHP는 : 나는 간단한 계산을 할 PHP에서

$num_1 = '200.50'; (string) 
$num_2 = '100.50'; (string) 

echo $num_1 - $num_2 

그 결과로 내가 궁금해하는 내가 캐스팅하지 못했다는 사실은 100.00

예상대로 float 값은 여전히 ​​올바른 결과를 얻습니다.
그리고 내 질문은 이런 종류의 (문자열) 계산이 안정적인가요?

+1

"PHP 유형 저글링"이라고합니다. 두 문자열은 숫자 문맥에서 사용되므로 float로 변환됩니다. – Rizier123

+0

시도해보고 ---> echo gettype ($ num_1 - $ num_2); // –

+0

PHP 자동 캐스팅 변수. 문자열 var에 대해 수학을 시도하면 정수로 변환됩니다. 마찬가지로 int에서 문자열 연산을 시도하면 문자열 $ a = 2가됩니다. $ b = $ a. ' 나는 지금 끈이다. '; echo $ b; // "2 나는 지금 문자열입니다." –

답변

1

문자열에 숫자를 사용하면 신뢰할 수 있습니다. 알파벳 문자, 특수 문자 또는 기본 수학에서 기대하지 못했던 다른 것을 사용하면 예기치 않은 결과가 발생할 수 있습니다.

예상되는 동작과 문제를 방지하는 방법에 대한 자세한 내용은 저글링 유형의 PHP 문서를 참조하십시오.

http://php.net/manual/en/language.types.type-juggling.php

+0

안녕 얘들 아 - 빠른 답변 - 슈퍼. Rizier123이 처음 이었지만 Goose가 가장 완벽한 답을주었습니다. 그래서 나는 그의 대답을 받아 들인다 - 알았지? – Ben

+0

거위 - 좋은 웹 사이트 ;-) – Ben

관련 문제