2017-11-20 6 views

답변

1

당신은 구조를 가지고 :

public function __construct($id = null, $name = null, $id_lang = null) 
{ 
    $this->def = Tag::getDefinition($this); 
    $this->setDefinitionRetrocompatibility(); 

    if ($id) { 
     parent::__construct($id); 
    } elseif ($name && Validate::isGenericName($name) && $id_lang && Validate::isUnsignedId($id_lang)) { 
     $row = Db::getInstance(_PS_USE_SQL_SLAVE_)->getRow(' 
     SELECT * 
     FROM `'._DB_PREFIX_.'tag` t 
     WHERE `name` = \''.pSQL($name).'\' AND `id_lang` = '.(int)$id_lang); 

     if ($row) { 
      $this->id = (int)$row['id_tag']; 
      $this->id_lang = (int)$row['id_lang']; 
      $this->name = $row['name']; 
     } 
    } 
} 

그래서, 당신은 호출하는 경우 :

$tag = new Tag(null, "stringtag", $id_lang); 
if($tag->id !== null){ 
    // stringtag exists for that id_lang 
} 

을하지만 모든 태그의 목록/수집을 얻기위한 방법이 없습니다. 그러나 같은 간단한 쿼리

Db::getInstance()->executeS('SELECT * FROM `'._DB_PREFIX_.'tag`') 

또는

Db::getInstance()->executeS('SELECT * FROM `'._DB_PREFIX_.'tag` WHERE `id_lang`='.$id_lang) 

모든 태그와 배열을 얻을 수있을만큼 간단합니다.