preg_replace(): /e 에러에 대해서......

2016.03.07 15:43
879
3
- - 짧은주소 : http://e3net.fineyes.com/bbs/?t=oV
본문
eyoom.class.php 754번째 줄에서 다음과 같은 에러가 연속으로 나타 납니다.
preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in on line
PHP 버전 때문에 발생하는 문제같은데 최신 버전에는 /e 옵션을 사용할 수 있는 방법이 따로 없나요?
/e 옵션을 빼버리면 동영상이 실행이 되지를 않고
이런식으로 소스가 노출되어 버립니다.
$this->video_content('https://www.youtube.com/watch?feature=player_embedded&v=SI6-1ID-V-s')
preg_replace_callback 를 써서 해결 하라고 해서 다음과 같이 만들었더니 크리티컬 에러가 나네요.
$content = preg_replace_callback("/{동영상\s*\:([^}]*)}/",
create_function ('$matches', 'return $this->video_content[1];'), $content);
고수님들 도움 부탁드립니다.
0
로그인 후 평가 가능합니다.

-
zipper
- 회원등급 : 지하계 / Level 3
포인트 3,811
경험치 863
[레벨 3] - 진행률
44%
- 가입일 : 2015-09-11 07:41:07
- 서명 : 미입력
- 자기소개 : 미입력
댓글목록 3
이윰IN님의 댓글
PHP 5.5 이상 버전에서는 /e modifier가 지원되지 않네요.
다음 버전에서 패치하도록 하겠습니다.
일단 급하신 데로 아래와 같이 소스를 수정하셔서 사용하시면 됩니다.
1. /eyoom/classes/eyoom.class.php 파일 - 754~755
2. /eyoom/classes/eyoom.class.php 파일 - 791 ~ 792
위 부분은 동영상 관련 부분 패치인데요.
우선 급하시면, 이 소스를 참고로 하여
이모티콘, 사운드클라우드, 지도까지 수정하시면 됩니다.
감사합니다.
축하합니다. 첫댓글 포인트 15포인트를 획득하였습니다.
zipper님의 댓글
너무 너무 감사드립니다.
php 버전을 낮은 걸 쓸수 밖에 없나? 생각중에 이윰IN님께서 솔류션을 주셔서 너무나 감사드립니다.
모든 것이 잘 작동됩니다.
참고로 PHP Version 7.0.3 를 사용하고 있습니다.
티보리님의 댓글
고수님들만 아는거군요