Skip to content

Instantly share code, notes, and snippets.

View kijin's full-sized avatar
🐻

Kijin Sung kijin

🐻
View GitHub Profile
@kijin
kijin / xmlconv.php
Created September 30, 2016 02:32
Convert XE lang files to XML format
<?php
/**
* XE 구버전의 PHP 언어파일이나 라이믹스의 PHP 언어파일을
* lang.xml 형식으로 변환하는 프로그램
*
* Copyright (c) 2016 Kijin Sung <kijin@kijinsung.com>
* License: MIT
*/
@kijin
kijin / string.php
Created February 8, 2013 04:12
String Object, written in 2010
<?php
// String Object
// Copyright (c) 2010 Kijin Sung <kijin@kijinsung.com>
// License: WTFPL <http://www.wtfpl.net/>
class String
{
// Some properties.
@kijin
kijin / aes_encrypt.php
Last active September 18, 2019 14:44
PHP에서 AES-256과 HMAC을 사용하여 문자열을 암호화하고 위변조를 방지하는 법
<?php
// AES-256과 HMAC을 사용하여 문자열을 암호화하고 위변조를 방지하는 법.
// 비밀번호는 서버만 알고 있어야 한다. 절대 클라이언트에게 전송해서는 안된다.
// PHP 5.2 이상, mcrypt 모듈이 필요하다.
// 문자열을 암호화한다.
function aes_encrypt($plaintext, $password)
{
@kijin
kijin / attachment.php
Last active August 24, 2020 02:58
UTF-8 파일 다운로드 함수
<?php
/**
* PHP 파일 다운로드 함수.
* Version 1.3
*
* Copyright (c) 2014 성기진 Kijin Sung
*
* License: MIT License (a.k.a. X11 License)
* http://www.olis.or.kr/ossw/license/license/detail.do?lid=1006
@kijin
kijin / ezpdo.php
Last active March 23, 2021 18:28
Easy PDO wrapper class
<?php
/**
* Easy PDO for PHP 5.x
* Version 1.2
*
* Copyright (c) 2009-2014 Kijin Sung <kijin@kijinsung.com>
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
@kijin
kijin / korean_inflection.php
Created March 24, 2014 07:05
한글 단어 마지막 글자에 받침이 있는지 확인하는 함수
<?php
// License: Public Domain
//
// 마지막 글자에 받침이 있으면 0보다 큰 정수를 반환하고
// 받침이 없으면 0을 반환한다.
//
// 예:
// $word = '깃허브';
// echo $word . (has_batchim($word) ? '을' : '를');
@kijin
kijin / gist:5829736
Last active February 10, 2022 14:44
HTML Purifier 사용예제
// 웹사이트에서 다운받아 적당한 곳에 압축 푸세요.
require_once('/경로/htmlpurifier/library/HTMLPurifier.auto.php');
// 기본 설정을 불러온 후 적당히 커스터마이징을 해줍니다.
$config = HTMLPurifier_Config::createDefault();
$config->set('Attr.EnableID', false);
$config->set('Attr.DefaultImageAlt', '');
// 인터넷 주소를 자동으로 링크로 바꿔주는 기능
$config->set('AutoFormat.Linkify', true);
@kijin
kijin / rx_ajax_comment.html
Last active March 22, 2022 03:39
라이믹스 2.0 새로고침 없는 댓글 예제
<!-- 폼에 rx_ajax 클래스를 추가하면 새로고침 없이 AJAX로 제출됩니다. -->
<!-- 제출 완료후 호출하기를 원하는 함수명을 data-callback-success 속성에 지정합니다. -->
<!-- 나머지는 라이믹스 코어가 알아서 합니다. -->
<form action="./" method="POST" class="rx_ajax" data-callback-success="refreshComments">
<!-- 댓글 작성을 위해 기본적으로 전송해야 하는 내용들 -->
<input type="hidden" name="mid" value="{$mid}" />
<input type="hidden" name="act" value="procBoardInsertComment" />
<input type="hidden" name="document_srl" value="{$oDocument->document_srl}" />
<!-- 내용을 에디터로 입력받거나 파일 업로드를 넣는 것은 숙제로 남겨둘게요.^^ -->
<textarea name="content" placeholder="댓글 내용"></textarea>
@kijin
kijin / example.md
Last active April 19, 2022 07:03
Rhymix Manual Template

Rhymix\Framework\Security

Security 클래스는 보안과 관련된 유틸리티를 모아 놓은 클래스로, 인스턴스 생성이 필요하지 않습니다.

Security 클래스에서 제공하는 것과 유사한 암호화, 난수 생성 등의 작업을 할 때는 가능하면 직접 구현하여 쓰지 말고 라이믹스 프레임워크에서 제공하는 것을 사용할 것을 권장합니다.

getRandom()

public static function getRandom(int $length = 32, string $format = 'alnum'): string
@kijin
kijin / pbkdf2.compat.php
Created May 22, 2014 13:26
PBKDF2 for Older Versions of PHP - Based on @defuse's Code
<?php
/*
* Password Hashing with PBKDF2 (http://crackstation.net/hashing-security.htm).
* Copyright (c) 2013, Taylor Hornby
* All rights reserved.
*
* Modified to Work with Older Versions of PHP
* Copyright (c) 2014, Kijin Sung
* All rights reserved.
*