
SwooleTable::key를 사용하여 데이터를 저장할 때, key의 타입은 string, integer, float, bool, array, object 중 하나여야 합니다.
SwooleTable::key를 사용하여 데이터를 조회할 때, key의 타입은 상관없이 조회가 가능합니다.
key의 타입에 따라 조회 결과가 달라질 수는 없습니다.
하지만, SwooleTable::TYPE_INT로 정의된 컬럼에 string 타입의 key를 사용하여 조회를 시도하면, integer로 변환된 key로 조회가 수행됩니다.
예를 들어, 위의 코드에서 'id' 컬럼은 SwooleTable::TYPE_INT로 정의되어 있습니다. 따라서, 'id' 컬럼에 string 타입의 key를 사용하여 조회를 시도하면, integer로 변환된 key로 조회가 수행됩니다.
예시:
#hostingforum.kr
php
$table = new SwooleTable(1000, 1024);
$table->column('id', SwooleTable::TYPE_INT);
$table->column('name', SwooleTable::TYPE_STRING);
$table->create();
$table->set(['id' => 1, 'name' => 'test']);
var_dump($table->get(1)); // integer key로 조회
var_dump($table->get('1')); // string key로 조회
위의 예시에서, 'id' 컬럼에 integer key를 사용하여 조회를 시도하면, integer로 변환된 key로 조회가 수행됩니다.
결과:
#hostingforum.kr
php
object(SwooleTableRow)#2 (2) {
["id"]=>
int(1)
["name"]=>
string(4) "test"
}
object(SwooleTableRow)#2 (2) {
["id"]=>
int(1)
["name"]=>
string(4) "test"
}
결과에서, integer key와 string key로 조회를 시도했을 때, 동일한 결과가 반환되는 것을 확인할 수 있습니다.
따라서, SwooleTable::key를 사용하여 데이터를 조회할 때, key의 타입은 상관없이 조회가 가능합니다.
2025-06-20 06:20