1
PHP exec()를 통해 C++ 함수에 전달하려고하는 base64 이미지 문자열이 있습니다. 그러나 문자열 내부에 공백이 있으면 exec()가 작동하지 않습니다.PHP exec()를 통해 텍스트 문자열 보내기
$data="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAfQAAAImCAMAAACSFogBAAAAAXNSR0IArs4c";
list($type, $data) = explode(';', $data);
list(, $data) = explode(',', $data);
exec('./hello'.$data, $out,$return);
if(!$return)
{
echo 'created';
}
else
{
echo 'not created';
}
'./hello '. $ data' 사이에 공백이 없으면 단지 방대한 파일 이름으로 param으로 전달되지 않으므로 작동하지 않을 것입니다. 또한 왜'str_replace ('data : image/png; base64,', '', $ str)가 아닌가? –
그래서 exec 줄을 변경하십시오 :'exec ("./ hello $ data", $ out, $ return);'hello 뒤에 공백이 생겼습니다. – Nic3500
귀하의 질문은 무엇입니까? $ data 안에 공백이 있으면 어떨까요? – Nic3500