$str = $xpath->query('//script[contains(text(), "dog")]')->item(0)->nodeValue;
// echo $str; // 이 부분의 결과는 dog 1234[cat 입니다.
$res = preg_replace('/^.+?\[/','',$str); // [ 포함 앞 부분을 삭제함
// 그런데...
echo $res; // 하면 결과가 그대로 dog 1234[cat 입니다. (삭제가 안됩니다.)
그런데 변수를 위의 결과값과 똑 같이 직접 아래와 같이 주고 ....
$str = "dog 1234[cat";
$res = preg_replace('/^.+?\[/','',$str);
echo $res; // 하면 결과가 cat 입니다.
// echo $str; // 이 부분의 결과는 dog 1234[cat 입니다.
$res = preg_replace('/^.+?\[/','',$str); // [ 포함 앞 부분을 삭제함
// 그런데...
echo $res; // 하면 결과가 그대로 dog 1234[cat 입니다. (삭제가 안됩니다.)
그런데 변수를 위의 결과값과 똑 같이 직접 아래와 같이 주고 ....
$str = "dog 1234[cat";
$res = preg_replace('/^.+?\[/','',$str);
echo $res; // 하면 결과가 cat 입니다.
왜 결과가 다르게 나오나요?
|
답변 3개
채택된 답변
+20 포인트
아름다운세상
2015-03-18 (수) 17:13:11
$str = $xpath->query('//script[contains(text(), "dog")]')->item(0)->nodeValue;
이거...프론트 단에서 객체 선택하는 스크립트 인가요?^^;
이게 서버 단에서는 처리 되기 전 값이 출력되서 그런거 같아요~
이거...프론트 단에서 객체 선택하는 스크립트 인가요?^^;
이게 서버 단에서는 처리 되기 전 값이 출력되서 그런거 같아요~
2015-03-20 (금) 13:33:37
위 단계에서의 dog 1234[cat값은 얼핏 보기에 문자열같아 보이지만 객체일 가능성이 놓습니다.
$str = (string)$str 로 한번 문자열로 돌리고 해보세요.
2015-03-18 (수) 18:25:42
echo strstr('[', $str); 이렇게 하면 뭐가나오나요?
답변을 작성하려면 로그인이 필요합니다.