하나의 헤드사용 관련하여 막히는 부분이있어 질문드립니다. > 그누4 질문답변

그누4 질문답변

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기
기존 게시물은 열람만 가능합니다.

하나의 헤드사용 관련하여 막히는 부분이있어 질문드립니다. 정보

하나의 헤드사용 관련하여 막히는 부분이있어 질문드립니다.

본문

위 두 팁과 질문을 참고로 설명드리겠습니다.
 
 
 
여기서
 
($bo_table == 'board1')
 
이부분이요...
 
이름이 board1 게시판일 경우는 적용잘되는데
 
이름이 board1_ 로 시작하는 모든게시판을 적용하고싶은데
 
도통 해결이안되어 이렇게 질문드립니다.
 
회원님들 도와주세요 ㅜ.ㅜ
  • 복사

댓글 전체

strstr : 대/소문자 구분, 지정문자열의 시작부터 끝 위치까지를 반환하므로 board1 이 들어있으면 모두 매치됩니다.
(대/소문자 구분없이 사용할때는 stristr() 을 사용)
strpos : strstr 과 같지만 정수형태로 위치를 잡아줄 수 있는 점이 다릅니다.
preg_match : 가장 널리 사용하며 무난하게 사용할 수 있다고 말할 수 있습니다.  이 함수는 위의 strstr/strpos 와 달리 시작점을 찾아서 끝까지의 모든 문자열을 반환하는 것이 아니라, 포함되는지를 리턴해 줍니다.

* 결과적으로 위에 3개다 되긴 합니다만..
substr() 은 위와 같은 상황에서는 잘 쓰지 않습니다. ㅡㅡ;
preg_match : 가장 널리 사용하며 무난하게 사용할 수 있다고 말할 수 있습니다???
이 상황에서는 아닌것 같은데요^^;;

$bo_table 은 단일 string 값입니다.
링크로 대신하겠습니다.
작은 정보: Do not use preg_match() if you only want to check if one string is contained in another string. Use strpos() or strstr() instead as they will be faster.

http://docs.ezphp.net/docs/php/manual/function.preg-match.html
http://blog.naver.com/unua?Redirect=Log&logNo=120018801875
http://www.dowa.pe.kr/manual/php/function.preg-match.html


사용예입니다.
http://kin.naver.com/db/detail.php?d1id=1&dir_id=10111&eid=IqBLOlg2EQMUta8vgeuLWGa6I3/X6lyb

if($href){
    if(strstr($href, "http://") !== false){ #if it's absolute
      $full_url = $href;


srt_replace 와 preg_replace 의 차이정도 라고 봅니다. 

preg_match_all('/<link\s+(.*?)\s*\/?>/si', $html, $matches);
        $links = $matches[1];
        $final_links = array();
        $link_count = count($links);
        for($n=0; $n<$link_count; $n++){
            $attributes = preg_split('/\s+/s', $links[$n]);
            foreach($attributes as $attribute){
                $att = preg_split('/\s*=\s*/s', $attribute, 2);
                if(isset($att[1])){
                    $att[1] = preg_replace('/([\'"]?)(.*)\1/', '$2', $att[1]);
                    $final_link[strtolower($att[0])] = $att[1];
새벽에 실컷 적었다가 sir 사이트가 죽는바람에 글을 다 날려서 간단히 적겠습니다.

php 일을 하는 사람치고, 남이 코딩한걸 마구잡이로 베껴서 쓰는사람이 아닌 다음에야 str_replace 와 preg_replace 의 차이가 메모리 사용율이라는걸 모르는 사람이 누가 있겠습니까?
그리고 위에 적으신 링크가 php 스크립트 언어를 직접 개발한 사람이 글을 적은 사이트 입니까?
사이트를 보니 국내사이트인것 같아서 들어가볼 필요를 못 느껴서 들어가보진 않았습니다만..
일반 개발자들이 쓴 글은 어차피 본인이 알고있는 기반에서 본인의 생각이 더해져서 쓰는 것입니다.
물론 php.net 의 펑션을 참고해서 쓰기는 하겠습니다만..

php 스크립트 언어를 직접 개발한 사람이 아니고서야 그 어떤 php 개발자라 하더라도 100% 정답에 맞게 코딩하는 사람이 있을까? 개인적으로 생각합니다.

또한 저 위에도 제가 댓글을 적었지만, strstr/strpos/preg_match 이렇게 3개를 적고 비교를 하는 코멘트까지 썼습니다.  그렇다면 메모리 사용율이나 그런건 개발자라면 당연히 차이를 알 것입니다.

위의 댓글처럼 그렇게 따진다면 저 위에 적은 댓글처럼 strstr 도 정답이 아닙니다만..
php.net 펑션의 글을 따르자면 정답은 strpos 가 되어야 하겠지요.
말씀처럼 그렇게 민감하게 함수 쓰는 법을 따진다면 그누보드나 영카트는 물론이고 국내에 그 어떤 무료/유료 프로그램도  php.net 에 있는 최적의 함수사용법을 100% 맞춰서 개발한건 개인적으로 없다고 생각하고 있고, 수 많은 프로그램을 보고, 만들고 일을 해봤지만 그런건 실제로도 아직 못봤습니다만..

* 쓰다보니 좀 길어졌습니다.
중요한건 여긴 문/답 란이고, 내가 알고 있는 지식을 질문자에게 도움을 주기위해 도움글을 적는 곳이 아닌지요?
그렇다면 자신이 알고 있는 - 잘못 알고있는 지식이 아니라면 - 지식이라면 도움을 주려고 글을 쓸 수가 있고, 이 글이 100% 정답이 아니라도 최소한의 도움은 되리라 생각합니다.
그리고 제가 저 위에 적은 글을 보면 알겠지만, 내가 적은 preg_match 가 정답이니 이걸로 써라??? 라는 식으로는 적어놓지 않았습니다.  3개의 함수를 설명하면서 예를 들었고, 가장 편하게 사용하는 것이 preg_match 라고만 적었습니다.  strstr 이나 strpos 를 써야 할 부분에서 preg_match 를 쓴다고 서버의 cpu/메모리 사용률에 차이가 날 정도로 영향을 미치지 않습니다.  오히려 잘못된 자바 스크립트가 브라우저 cpu 점유율을 높여서 사용자 컴퓨터의 cpu를 모두 잡아먹는 현상이 있습니다.

논쟁을 하자는 건 아닙니다.
단지 위에 댓글을 저렇게 적어 놓으셨글래 개인적인 생각을 좀 써봤습니다.
© SIRSOFT
현재 페이지 제일 처음으로