목록분류 전체보기 (496)
규도자 개발 블로그
html태그와 함께 안에 있는 content도 날려버리는 php함수 function strip_tags_content($text, $tags = '', $invert = FALSE) { preg_match_all('//si', trim($tags), $tags); $tags = array_unique($tags[1]); if(is_array($tags) AND count($tags) > 0) { if($invert == FALSE) { return preg_replace('@.*?@si', '', $text); } else { return preg_replace('@.*?@si', '', $text); } } elseif($invert == FALSE) { return preg_replace('@.*?@..
규칙없는(Not Iterable) 자바스크립트 객체 순회하기 무작위하게 적혀있는 자바스크립트 객체 안의 모든 값이 필요할 때가 있다. 그럴 때 쓰기 좋은 함수이다. 아래 소스들은 전부 관리자모드의 console창을 켜서 입력하면 바로바로 실행해볼 수 있다. var testObj = { "id": 1, "name": "Leanne Graham", "username": "Bret", "email": "Sincere@april.biz", "address": { "street": "Kulas Light", "suite": "Apt. 556", "city": "Gwenborough", "zipcode": "92998-3874", "geo": { "lat": "-37.3159", "lng": "81.1496" } ..
내가 얼마 전에 서평을 남긴 책이 있다. 바로 '초예측'이라는 책이다. 맨 처음에는 독특하고 한번에 알 수 있을 법한 책 제목에 확 끌렸는데 요즘 나오는 책들을 보니 바로 이 '초'라는 접두어를 남발하고 있더라. 한옛날에 '바보는 항상 ~만 한다'라는 제목 열풍에 이어 이번에는 접두어에 '초'를 붙이는 게 유행인가 싶다. 나는 이런 이유모를 유행에 일단 반감부터 갖게 되는 성격인지라 이제는 이상하게 접두어에 뜬금없이 '초'를 붙인 것들을 보면 소름이 돋는다. 알라딘에 '초'로 검색을 해보니 최상단에는 초예측이 뜬다. 초예측의 원제는 SUPER-FORECAST이다. 그야말로 직역이라고 할 수 있겠다. 근데 내가 오늘 들린 영풍문고에서는 최소 세네권의 책들이 앞에 접두어로 '초'를 달고 있었다. 아직 많이 ..
알고리즘 문제들을 푸는 걸 좋아했는데 점점 나만의 재량으로 풀 수 없는 문제들이 나올 때, 예를 들어 다이나믹 프로그래밍이나 그래프이론, 탐색 등의 요소가 가미됐을 때 들었던 생각들이다. 그러니까... 기분이 이상했다고 해야하나. 창의력 문제였던 줄만 알았던 알고리즘 문제조차 사실은 수학문제들 처럼 공식을 알아서 대입해야만 풀 수 있는 것들이었고 결국엔 공식의 적절한 활용과 응용으로 풀어내는 것들이었다는 걸 깨닫고 나니 결국 알고리즘도 수학이랑 다를 게 없구나 하는 생각이 들었다. 사실 이런 생각들이 물밀듯이 들어왔던 계기가 있는데 얼마 전에 에라토스테네스의 체를 응용해야하만 하는 문제를 만났을 때였다. 에라토스테네스의 체가 뭔지도 몰랐던 나는 어리둥절했고 위키피디아에 검색해봐서 아 이게 에라토스테네스의..
내가 코드를 작성할 때 중요하게 생각하는 것이 있다. 정확성은 프로그램이 가져야할 필수요소이고 애초에 정확성이 없다면 프로그램으로서의 가치가 없으므로 딱히 강조하지 않겠다. 그밖에 중요하게 생각하는 건 바로 간결성과 가독성이다. 그 중에서도 특히 중요한 건 가독성이라고 생각한다. 코드는 결국 사람이 읽기 때문이다. 코드는 결국 다시 읽힌다. 그사람은 당신의 팀원일 수도, 또 당신 자신일 수도 있다. 만약 옛날에 무아지경으로 마구마구 작성해놓은 코드가 다시 필요하다고 할 때 마구잡이로 조사놓은 변수이름들과 코드를 보면 어떤 느낌일까. 예전의 당신이 원망스러워질 것이다. 나는 이러한 경험을 몇 번 겪고 나서 나만의 일정한 규칙을 정해서 변수를 작성하기 시작했다. 그 이후로는 다른 클래스나 다른 파일에서 어떠..
IT혁신의 3대산맥인 머신, 플랫폼, 크라우드를 다루는 책이다. 하지만 해당 이슈들에 대해서 관심이 많은 사람들이라면 다소 진부하고 뻔한 느낌을 받을 수 있다. 앞으로 내가 할 얘기들을 읽다보면 무슨 느낌인지 감이 올 것이다. 이 책에서 말하는 머신은 머신러닝이고 대표적인 예제로 알파고와 왓슨이 나온다. 이 책에서 말하는 플랫폼은 말 그대로 플랫폼이고 예제로는 우버와 에어비앤비, 아마존 등등이 나온다. 이 책에서 말하는 크라우드는 말 그대로 군중을 의미하며 오픈소스 혁명과 블록체인 등등에 대해서 얘기한다. 그렇다. 이 책은 3대 IT혁신의 중축에 대해서 얘기하고 있지만 조금만 IT업계에 관심을 가졌거나 혹은 차세대 비즈니스에 대해서 관심이 있는 사람이라면 전부 알만한 예제들과 사례들로 구성돼있는 책이다...
워드프레스에서 관리자 메뉴를 데이터로 조회하는 법 global $menu, $submenu; echo ""; echo ""; 해보면 된다. 해당 변수는 admin header에서 초기화되기 때문에 일반 페이지에서는 조회할 수 없고 wp-admin이라는 슬러그가 들어간 관리자페이지에서만 조회할 수 있다. 현재 메뉴별로 관리자 권한을 차등 적용하여 역할별로 접근할 수 있는 메뉴를 달리 하는 플러그인을 제작 중인데 아무리 생각해봐도 관리자 페이지에서 모든 메뉴들을 조회할 수 있음에도 불구하고 그런 변수가 담겨있지 않은 애가 없을 수가 없을 것 같았다. 해서 열심히 찾았다. 구글링을 해봐도 menu랑 submenu는 너무 포괄적인 단어였던 데다가 대부분은 플러그인 등을 조작해서 관리자 화면을 관리하는 방법이었던..
Json Placeholder와 깃허브를 이용해 테스트용 무료 api서버 만들기 예전에 이런 글을 썼었다.JSON을 테스트하는 가장 좋은 방법. POSTMAN과 JSON Placeholder이때는 그냥 Json Placeholder에서 제공하는 api만을 받는 걸로 설명을 했었는데 이번에는 이곳에서 제공하는 커스텀 테스트 서버기능을 이용해보겠다. api를 테스트해야하는데 이 사이트에서 제공하는 json자료형과 내가 사용해야 하는 자료형이 다를 때 테스트용으로 쓰면 좋다. 사이트에 들어가서 최상단의 My JSON Server를 눌러보자. 그러면 깃허브를 이용해서 테스트 서버를 만든다는 안내를 받을 수 있다. 아주아주 간단한데 왼쪽의 사진을 보면 알겠지만 저장소를 하나 만들어 db.json이라는 파일을 만들..
git 저장소 바꾸는 방법 깃허브의 private저장소가 무료로 풀렸다. 전엔 월 6$의 과금을 해야지만 이용할 수 있었는데 말이다. 마이크로소프트가 깃허브를 인수하고 과금정책을 올 1월부터 바꾼 거였는데 어제사 알게 됐다. 마침 어제가 만우절이어서 진짠가 했더니 진짜더라. 해서 원래는 gitlab에서 진행중이었던 개인프로젝트를 깃허브로 전부 옮겼다. 옮긴 김에 깃 repository를 변경했을 때 썼던 방법을 남겨놓으려 한다. $ git remote -v # View existing remotes origin https://github.com/user/repo.git (fetch) origin https://github.com/user/repo.git (push) $ git remote set-url ..
이 책의 모토는 다음과 같다. "숙련공에서 마스터로" 실용주의 프로그래머라는 직관적인 이름에 걸맞는 내용들로 채워져있다. 책의 전반적인 분위기를 파악할 수 있는 목차에서 특히나 이 책의 특징을 잘 파악할 수 있는데 실용주의 철학에 대한 소개에서부터 기본적인 도구를 고르는 법, 그리고 다소 구체적인 디버깅이나 텍스트 처리에 대한 부분까지도 실려있는 걸 보면 이 책이 프로그래밍에 있어서 어느정도의 궤를 잡고 있는지 얼추 감이 올 것이다. 철학에서부터 구현까지 아주 많은 실용주의 프로그래밍 철학을 설파한다. 어떤 내용은 클린 코드나 이펙티브 프로그래밍에서 많이 봐왔던 것들인데 이만큼 여러 책에서 다루는 것이면 그만큼 중요하겠거니 하는 생각이 든다. 하지만 이 책에서 가장 감명깊었던 부분은 바로 클라이언트와 요..