2017-10-07 2 views
1

나는 ascii 문자를 나타내는 동적 값 $ input을가집니다. 그러나 어쨌든 나는 그것을 정확하게 인쇄 할 수 없다.Echo PHP의 동적 ascii 문자열

$str= "\155\155"; 
echo 'value is '.$str; 

$input = 155; 
$num= "\\".$input."\\".$input; 
echo 'another value '.$num; 

첫 번째 줄은 "mm" 그러나 "(155) 155 \ \"두 번째 줄은 내가 밖으로 떠납니다 일부 변환이 거기에있다 할 것이다?

답변

1

예. 155는 m에 대한 8 진수 값입니다.

를 체크 아웃 :

$str= "\155\155"; 
echo 'value is '.$str; 

$input = 155; 
$num = octdec($input); 
$num = chr($num); 
echo ' another value from octal '.$num; 

$input = 109; 
$num = chr($input); 
echo ' another value from decimal '.$num; 

나는 당신이 간단 할 수 있는지 확실하지 않습니다. 원하는대로 도달 할 수있는 쉬운 방법은 다음과 같습니다.

$input = 155; 
$num= "\\".$input."\\".$input; 
$num = str_replace("\\".$input, chr(octdec($input)), $num); 
echo 'another value '.$num; 
+0

사과드립니다. 제 질문에 명확하지 않았습니다. 이상 적으로는 문자로 인쇄해서는 안되며 합성 문자열을 인쇄해야했습니다. 이 경우 가능하지 않습니까? – phantomhive

+0

수정 된 스 니펫을 확인하십시오. –

+0

음 .. 이상적이지 않습니다. 우리는 문자 그대로 "\ 155 \ 155"형식의 입력을 사용하는 함수를 가지고 있으며 일반 에코와 함께 작동합니다. 어떤 이유로 나는 그것을 바꿀 수 없다. echo $ str입니다. $ str은 동적으로 합성되어야합니다. – phantomhive