<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>프로그램 개발서</title>
    <link>https://rairen.tistory.com/</link>
    <description>웹 개발 관련 프로그램 블로그,
취미 등의 정보 공유 블로그</description>
    <language>ko</language>
    <pubDate>Tue, 30 Jun 2026 11:29:31 +0900</pubDate>
    <generator>TISTORY</generator>
    <ttl>100</ttl>
    <managingEditor>rairen</managingEditor>
    <image>
      <title>프로그램 개발서</title>
      <url>https://tistory1.daumcdn.net/tistory/2809287/attach/af154988fd4546bc8508200462f0feae</url>
      <link>https://rairen.tistory.com</link>
    </image>
    <item>
      <title>PHP Byte 단위 표시용 함수</title>
      <link>https://rairen.tistory.com/100</link>
      <description>if (!function_exists(&quot;formatBytes&quot;)) {
&amp;nbsp; &amp;nbsp; // PHP 버전별 최적화된 formatBytes 함수
&amp;nbsp; &amp;nbsp; function formatBytes($size, $fromUnit = 'B', $toUnit = null, $precision = 2)
&amp;nbsp; &amp;nbsp; {
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; $units = ['B' =&amp;gt; 0, 'KB' =&amp;gt; 1,..</description>
      <category>PHP</category>
      <category>function</category>
      <category>php</category>
      <author>rairen</author>
      <guid isPermaLink="true">https://rairen.tistory.com/100</guid>
      <comments>https://rairen.tistory.com/100#entry100comment</comments>
      <pubDate>Thu, 13 Mar 2025 16:00:05 +0900</pubDate>
    </item>
    <item>
      <title>responsive css ...</title>
      <link>https://rairen.tistory.com/99</link>
      <description>&amp;nbsp;

if (! function_exists('directory_map')) {
&amp;nbsp; &amp;nbsp; /**
&amp;nbsp; &amp;nbsp; &amp;nbsp;* 디렉토리 맵 생성
&amp;nbsp; &amp;nbsp; &amp;nbsp;*
&amp;nbsp; &amp;nbsp; &amp;nbsp;* 지정된 디렉터리를 읽고 해당 디렉터리의 배열 표현을 만듭니다.
&amp;nbsp; &amp;nbsp; &amp;nbsp;* 디렉터리에 포함된 하위 폴더도 매핑됩니다.
&amp;nbsp; &amp;nbsp; &amp;nbsp;*
&amp;nbsp; &amp;..</description>
      <category>Web</category>
      <category>ㅊㄴㄴ</category>
      <author>rairen</author>
      <guid isPermaLink="true">https://rairen.tistory.com/99</guid>
      <comments>https://rairen.tistory.com/99#entry99comment</comments>
      <pubDate>Sun, 15 Dec 2024 03:07:56 +0900</pubDate>
    </item>
    <item>
      <title>PHP 5.4.16 버전에서 FCM HTTP V1 푸시 알림 보내는 방법!!</title>
      <link>https://rairen.tistory.com/98</link>
      <description>&amp;nbsp;
PHP 버전이 5.4인데 푸시 알림을 보내려면 http v1 으로 마이그레이션을 해야하는 상황!
&amp;nbsp;
하지만 인터넷 검색하면 초반에 나오는 내용은 php7나 8등의 상위버전 내용이라서 원하는 내용을 찾을 수 없었다.
&amp;nbsp;
여러가지를 알아보다 내가 사용한 방법으로 php-jwt를 이용한 방법이다.
&amp;nbsp;
1. 깃 허브 파이어베이스 레포지터리 중 php-jwt를 들어가서 자신의버전에 맞는 버전을 찾아 다운받는다.
나의 경우 ..</description>
      <category>PHP</category>
      <category>5.4</category>
      <category>FCM</category>
      <category>http v1</category>
      <category>php</category>
      <category>푸시 알림</category>
      <author>rairen</author>
      <guid isPermaLink="true">https://rairen.tistory.com/98</guid>
      <comments>https://rairen.tistory.com/98#entry98comment</comments>
      <pubDate>Mon, 9 Sep 2024 16:51:59 +0900</pubDate>
    </item>
    <item>
      <title>그누보드5 이윰빌더 시즌4 CHEditor5에 에드온 이모티콘 삽입</title>
      <link>https://rairen.tistory.com/97</link>
      <description>Gnuboard5의 에디터로 들어가있는 cheditor5 에 대한 기록입니다.
&amp;nbsp;
&amp;nbsp;
이윰빌더 시즌4 에서 게시판 에드온 기능으로 이모티콘이 있습니다.
&amp;nbsp;

&amp;nbsp;
이윰빌더를 쓰려고할 때 이모티콘이 에디터에 추가되지 않는 것을 확인할 수 있을 것이다.
그 이유는 에디터 내에 추가하는 함수에서 cheditor에 대한 처리가 없기 때문인데, 그러므로 수정을 해줘야만 이윰빌더 이모티콘을 에디터에 삽입할 수 있다.
&amp;nbsp;
..</description>
      <category>Javascript</category>
      <category>cheditor5</category>
      <category>그누보드5</category>
      <category>이모티콘 삽입</category>
      <category>이윰빌더 시즌4</category>
      <author>rairen</author>
      <guid isPermaLink="true">https://rairen.tistory.com/97</guid>
      <comments>https://rairen.tistory.com/97#entry97comment</comments>
      <pubDate>Mon, 24 Jun 2024 00:45:53 +0900</pubDate>
    </item>
    <item>
      <title>[Tip] 폼 서브밋 바인딩하여 발리데이트 시 아약스사용할 경우 참고사항</title>
      <link>https://rairen.tistory.com/96</link>
      <description>&amp;nbsp;
JS 를 다루면서 가끔가다 보면 잘 잊는 경우가 있어 메모해둘 겸 작성하는 Tip
&amp;nbsp;
&amp;lt;form&amp;gt; 을 전송하는데 있어서 내부의 요소에 대한 유효성 검사를 js로 검사할 경우 보통 submit 이벤트에 바인딩하여 유효성 검사를 진행한다.
&amp;nbsp;
그리고 요소 중 특정 요소의 경우에는 ajax 를 통해 유효성 검사를 하는 경우가 있는데,
이 때 ajax를 사용할 떄 일반적으로 비동기적으로 통신을 하는데,
비동기식으로 통신..</description>
      <category>jQuery</category>
      <category>ajax</category>
      <category>form</category>
      <category>submit</category>
      <category>validate</category>
      <author>rairen</author>
      <guid isPermaLink="true">https://rairen.tistory.com/96</guid>
      <comments>https://rairen.tistory.com/96#entry96comment</comments>
      <pubDate>Thu, 18 Jan 2024 13:51:26 +0900</pubDate>
    </item>
    <item>
      <title>[CI4] 카페24에 설치 해보기</title>
      <link>https://rairen.tistory.com/95</link>
      <description>&amp;nbsp;
1. CodeIgniter 4 Download
&amp;nbsp;
다운로드 링크 : Welcome to CodeIgniter

&amp;nbsp;

Welcome to CodeIgniter
CodeIgniter 3 is the legacy version of the framework, intended for use with PHP 5.6+. This version is in maintenance, receiving mostly just security u..</description>
      <category>PHP</category>
      <category>CI4</category>
      <category>라이렌</category>
      <category>카페24</category>
      <category>코드이그나이터</category>
      <author>rairen</author>
      <guid isPermaLink="true">https://rairen.tistory.com/95</guid>
      <comments>https://rairen.tistory.com/95#entry95comment</comments>
      <pubDate>Sat, 30 Dec 2023 03:30:13 +0900</pubDate>
    </item>
    <item>
      <title>[phpDocumentor]@todo</title>
      <link>https://rairen.tistory.com/94</link>
      <description>원문
https://manual.phpdoc.org/HTMLSmartyConverter/PHP/phpDocumentor/tutorial_tags.todo.pkg.html

&amp;nbsp;

@todo
@todo Document changes that will be made in the future Gregory Beaver Copyright 2002, Gregory Beaver (phpDocumentor 1.0+) @todo information strin..</description>
      <category>PHP</category>
      <category>documentor</category>
      <category>php</category>
      <category>ToDo</category>
      <category>라이렌</category>
      <author>rairen</author>
      <guid isPermaLink="true">https://rairen.tistory.com/94</guid>
      <comments>https://rairen.tistory.com/94#entry94comment</comments>
      <pubDate>Wed, 6 Dec 2023 11:44:51 +0900</pubDate>
    </item>
    <item>
      <title>[phpDocumentor]@version</title>
      <link>https://rairen.tistory.com/93</link>
      <description>원문
https://manual.phpdoc.org/HTMLSmartyConverter/PHP/phpDocumentor/tutorial_tags.version.pkg.html

&amp;nbsp;

@version
@version Version of current element Gregory Beaver Copyright 2002, Gregory Beaver (phpDocumentor 0.1+) @version versionstring [unspecified ..</description>
      <category>PHP</category>
      <category>@Version</category>
      <category>php</category>
      <category>phpDocumentor</category>
      <category>라이렌</category>
      <author>rairen</author>
      <guid isPermaLink="true">https://rairen.tistory.com/93</guid>
      <comments>https://rairen.tistory.com/93#entry93comment</comments>
      <pubDate>Wed, 6 Dec 2023 11:29:56 +0900</pubDate>
    </item>
    <item>
      <title>[phpDocumentor]@abstract</title>
      <link>https://rairen.tistory.com/92</link>
      <description>&amp;nbsp;
원문&amp;nbsp;
https://manual.phpdoc.org/HTMLSmartyConverter/PHP/phpDocumentor/tutorial_tags.abstract.pkg.html

&amp;nbsp;

@abstract
@abstract Document an abstract class or method Gregory Beaver Chuck Burgess Copyright 2002, Gregory Beaver (phpDocumentor 1...</description>
      <category>PHP</category>
      <category>@abstact</category>
      <category>php</category>
      <category>phpDocumentor</category>
      <author>rairen</author>
      <guid isPermaLink="true">https://rairen.tistory.com/92</guid>
      <comments>https://rairen.tistory.com/92#entry92comment</comments>
      <pubDate>Wed, 6 Dec 2023 11:26:16 +0900</pubDate>
    </item>
    <item>
      <title>Javascript 함수 모음</title>
      <link>https://rairen.tistory.com/91</link>
      <description>1. onlyNumber(className)
/**
 * 클래스 명 입력하여 지정가능
 */
function onlyNumber(className = 'onlyNumber'){
	className = '.' + classname;
    const onlyNumberEl = document.querySelectorAll(className);
    onlyNumberEl.forEach(function(el, idx){
    	el.addEventLis..</description>
      <category>Javascript</category>
      <category>function</category>
      <category>javascript</category>
      <category>onlyNumber()</category>
      <category>숫자만 입력</category>
      <author>rairen</author>
      <guid isPermaLink="true">https://rairen.tistory.com/91</guid>
      <comments>https://rairen.tistory.com/91#entry91comment</comments>
      <pubDate>Tue, 29 Aug 2023 14:46:09 +0900</pubDate>
    </item>
  </channel>
</rss>