jonathanbak / mysqlilib
Simple MySQLi Library
v1.3.6
2023-10-20 02:02 UTC
Requires
- php: >=5.6.0
Requires (Dev)
- phpunit/phpunit: ~4.0
README
가볍게, 간단히 실무에 적용할수 있는 MySQL 라이브러리입니다.
사용해보시고 이상있으면 메일주세요~ 언제든지 문의 환영입니다.
php5.6 ~ php8.2 까지 사용가능합니다.
Install
$ composer require jonathanbak/mysqlilib $ composer install
Test
phpunit.xml.dist 에 아래 내용을 본인의 MySQL 서버 정보를 넣고
<php> <var name="DB_HOST" value="localhost" /> <var name="DB_USER" value="test" /> <var name="DB_PASSWD" value="test1234" /> <var name="DB_NAME" value="db_test" /> <var name="DB_PORT" value="3306" /> </php>
phpunit 실행하여 테스트 해봅니다.
$ vendor/bin/phpunit
Usage
간단한 디비 연결 및 SELECT 쿼리 :
$DB = new MySQLiLib($host, $user, $password, $dbName); $query = "SELECT * FROM test"; $row = $DB->fetch($query); var_dump($row);
SELECT
test 테이블의 id = 222 인 데이터 한 행 가져오기
$query = "SELECT * FROM test WHERE id = ?"; $row = $DB->fetch($query, array(222)); var_dump($row);
test 테이블의 id = 11 인 데이터 여러 행 가져오기
$query = "SELECT * FROM test WHERE id = ?"; $rows = array(); while($row = $DB->fetch($query, array(11))){ $rows[] = $row; } var_dump($rows);
test 테이블의 name LIKE '테스트%' 인 데이터 여러 행 가져오기
$query = "SELECT * FROM test WHERE name LIKE '??%'"; $rows = array(); while($row = $DB->fetch($query, array('테스트'))){ $rows[] = $row; } var_dump($rows);
INSERT, UPDATE, DELETE
$query = "INSERT INTO test SET id = ?, reg_date = ?"; $result = $DB->query($query, array(33, date("Y-m-d H:i:s"))); var_dump($result); $query = "DELETE FROM test SET id = ?"; $result = $DB->query($query, array(33)); var_dump($result);
Exception
test 테이블의 id = 33 인 데이터가 이미 입력되있을때 Duplicate entry '33' for key 'PRIMARY' 오류 발생시
try{ $query = "INSERT INTO test SET id = ?, reg_date = ?"; $result = $DB->query($query, array(33, date("Y-m-d H:i:s"))); }catch(\MySQLiLib\Exception $e){ //print error message "Duplicate entry '33' for key 'PRIMARY'" var_dump($e->getMessage()); }
Prepared statement query
$query = "INSERT INTO test SET id = ?, reg_date = ?"; $DB->bind_param('i'); $result = $DB->query($query, array(33, date("Y-m-d H:i:s"))); var_dump($result); $query = "DELETE FROM test SET id = ?"; $DB->bind_param('i'); $result = $DB->query($query, array(33)); var_dump($result);