문제

정수를 PHP의 문자열로 변환하는 방법이 있습니까?

도움이 되었습니까?

해결책

당신은 사용할 수 있습니다 strval() 함수 숫자를 문자열로 변환합니다.

유지 보수 관점에서 볼 때 다른 더 난해한 답변보다는 무엇을하려고하는지 명백합니다. 물론, 그것은 당신의 맥락에 달려 있습니다.

$var = 5;

// Inline variable parsing
echo "I'd like {$var} waffles"; // = "I'd like 5 waffles

// String concatenation 
echo "I'd like ".$var." waffles"; // I'd like 5 waffles

// Explicit cast 
$items = (string)$var; // $items === "5";

// Function call
$items = strval($var); // $items === "5";

다른 팁

이것을하는 방법에는 여러 가지가 있습니다.

두 가지 예 :

 $str = (string) $int;
 $str = "$int";     

PHP 매뉴얼을 참조하십시오 유형 저글링 이상.

$foo = 5;

$foo = $foo . "";

지금 $foo 문자열입니다.

그러나 캐스팅에 익숙해지고 싶을 수도 있습니다. 캐스팅은 그런 종류의 무언가를 성취하는 적절한 방법입니다.

$foo = 5;    
$foo = (string)$foo;

또 다른 방법은 인용문으로 캡슐화하는 것입니다.

$foo = 5;
$foo = "$foo"

정수를 PHP의 문자열로 "변환"하는 방법에는 여러 가지가 있습니다.

전통적인 CS 방식은 변수를 문자열로 캐스팅하는 것입니다.

$int = 5;
$int_as_string = (string) $int;
echo $int . ' is a '. gettype($int) . "\n"; 
echo $int_as_string . ' is a '. gettype($int_as_string) . "\n";

PHP의 암시 적 유형 변환 및 문자열 보간을 활용할 수도 있습니다.

$int = 5;
echo $int . ' is a '. gettype($int) . "\n"; 

$int_as_string = "$int";
echo $int_as_string . ' is a '. gettype($int_as_string) . "\n"; 

$string_int = $int.'';
echo $int_as_string . ' is a '. gettype($int_as_string) . "\n";     

마지막으로 위와 유사하게 문자열을 수락하고 반환하는 함수는 변환 및 정수에 사용될 수 있습니다. 다음을 고려하세요

$int = 5;
echo $int . ' is a '. gettype($int) . "\n"; 

$int_as_string = trim($int);
echo $int_as_string . ' is a '. gettype($int_as_string) . "\n"; 

나는 최종 옵션을 권장하지는 않지만이 행동에 의존하는 Wild에서 코드를 보았으므로 그것을 전달할 것이라고 생각했습니다.

이 모든 대답은 훌륭하지만 값이 0 인 경우 모두 빈 문자열을 반환합니다.

다음을 시도하십시오.

$v = 0;

$s = (string)$v : (string)$v ? "0";
$intValue = 1; 
$string = sprintf('%d',$intValue ); 

또는 다음과 같습니다.

$string = (string)$intValue ; 

또는:

settype(&$intValue ,'string');  

가능한 전환 방법이 많이 있습니다.

$input => 123
sprintf('%d',$input) => 123
(string)$input => 123
strval($input) => 123
settype($input, "string") => 123

기간 연산자를 사용하고 문자열을 연결할 수 있습니다 (문자열에 캐스팅 된 유형).

$integer = 93;
$stringedInt = $integer."";

또는 더 정확하게는 정수를 문자열로 입력 할 수 있습니다.

$integer = 93;
$stringedInt = (string) $integer;

나는 그것이 맥락에 달려 있다고 말할 것이다. Strval() 또는 캐스팅 연산자 (문자열)를 사용할 수 있지만 대부분의 경우 PHP는 Echo 또는 Printf와 함께 사용하는 경우 PHP가 귀하에게 좋은 것을 결정합니다. 하나의 작은 참고 사항 : Die ()가 문자열이 필요하고 이겼습니다. 't int show :)

여기서 답이 잘 보여 지듯이 여러 가지 방법이 있습니다. 그러나 PHP에서는 실제로 그렇게 할 필요가 없습니다. PHP를 작성하는 "독단적 방법"은 언어의 느슨한 타이핑 시스템에 의존하는 것이며, 이는 필요에 따라 유형을 투명하게 강화합니다. 정수 값의 경우 일반적으로 문제가 없습니다. 그러나 부동 소수점 값에 매우주의해야합니다.

다음을 간단히 사용할 수 있습니다.

$intVal = 5;
$strVal = trim($intVal);
$amount = 2351.25;
$str_amount = "2351.25";

$strCorrectAmount = "$amount";
echo gettype($strCorrectAmount);

에코가 돌아올 것입니다

$integer = 93;
$stringedInt = $integer.'';

보다 빠릅니다

$integer = 93;
$stringedInt = $integer."";
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top