[php] PHP에서 정수를 문자열로 변환

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에서 정수를 문자열로 “변환”하는 방법에는 여러 가지가 있습니다.

전통적인 컴퓨터 과학 방법은 변수를 문자열로 캐스팅하는 것입니다.

$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";

최종 옵션을 권장하지는 않지만이 동작에 의존하는 코드를 야생에서 보았으므로 통과시킬 것이라고 생각했습니다.


답변

이 모든 대답은 훌륭하지만 값이 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