本文整理汇总了PHP中Aimeos\MShop\Common\Item\Iface::getTypeId方法的典型用法代码示例。如果您正苦于以下问题:PHP Iface::getTypeId方法的具体用法?PHP Iface::getTypeId怎么用?PHP Iface::getTypeId使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Aimeos\MShop\Common\Item\Iface
的用法示例。
在下文中一共展示了Iface::getTypeId方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: saveItem
/**
* Updates or adds a text item object.
* This method doesn't update the type string that belongs to the type ID
*
* @param \Aimeos\MShop\Text\Item\Iface $item Text item which should be saved
* @param boolean $fetch True if the new ID should be returned in the item
*/
public function saveItem(\Aimeos\MShop\Common\Item\Iface $item, $fetch = true)
{
$iface = '\\Aimeos\\MShop\\Text\\Item\\Iface';
if (!$item instanceof $iface) {
throw new \Aimeos\MShop\Text\Exception(sprintf('Object is not of required type "%1$s"', $iface));
}
if (!$item->isModified()) {
return;
}
$context = $this->getContext();
$dbm = $context->getDatabaseManager();
$dbname = $this->getResourceName();
$conn = $dbm->acquire($dbname);
try {
$id = $item->getId();
$date = date('Y-m-d H:i:s');
if ($id === null) {
/** mshop/text/manager/standard/insert
* Inserts a new text record into the database table
*
* Items with no ID yet (i.e. the ID is NULL) will be created in
* the database and the newly created ID retrieved afterwards
* using the "newid" SQL statement.
*
* The SQL statement must be a string suitable for being used as
* prepared statement. It must include question marks for binding
* the values from the text item to the statement before they are
* sent to the database server. The number of question marks must
* be the same as the number of columns listed in the INSERT
* statement. The order of the columns must correspond to the
* order in the saveItems() method, so the correct values are
* bound to the columns.
*
* The SQL statement should conform to the ANSI standard to be
* compatible with most relational database systems. This also
* includes using double quotes for table and column names.
*
* @param string SQL statement for inserting records
* @since 2014.03
* @category Developer
* @see mshop/text/manager/standard/update
* @see mshop/text/manager/standard/newid
* @see mshop/text/manager/standard/delete
* @see mshop/text/manager/standard/search
* @see mshop/text/manager/standard/count
*/
$path = 'mshop/text/manager/standard/insert';
} else {
/** mshop/text/manager/standard/update
* Updates an existing text record in the database
*
* Items which already have an ID (i.e. the ID is not NULL) will
* be updated in the database.
*
* The SQL statement must be a string suitable for being used as
* prepared statement. It must include question marks for binding
* the values from the text item to the statement before they are
* sent to the database server. The order of the columns must
* correspond to the order in the saveItems() method, so the
* correct values are bound to the columns.
*
* The SQL statement should conform to the ANSI standard to be
* compatible with most relational database systems. This also
* includes using double quotes for table and column names.
*
* @param string SQL statement for updating records
* @since 2014.03
* @category Developer
* @see mshop/text/manager/standard/insert
* @see mshop/text/manager/standard/newid
* @see mshop/text/manager/standard/delete
* @see mshop/text/manager/standard/search
* @see mshop/text/manager/standard/count
*/
$path = 'mshop/text/manager/standard/update';
}
$stmt = $this->getCachedStatement($conn, $path);
$stmt->bind(1, $context->getLocale()->getSiteId(), \Aimeos\MW\DB\Statement\Base::PARAM_INT);
$stmt->bind(2, $item->getLanguageId());
$stmt->bind(3, $item->getTypeId(), \Aimeos\MW\DB\Statement\Base::PARAM_INT);
$stmt->bind(4, $item->getDomain());
$stmt->bind(5, $item->getLabel());
$stmt->bind(6, $item->getContent());
$stmt->bind(7, $item->getStatus(), \Aimeos\MW\DB\Statement\Base::PARAM_INT);
$stmt->bind(8, $date);
// mtime
$stmt->bind(9, $context->getEditor());
if ($id !== null) {
$stmt->bind(10, $id, \Aimeos\MW\DB\Statement\Base::PARAM_INT);
$item->setId($id);
} else {
$stmt->bind(10, $date);
// ctime
//.........这里部分代码省略.........
示例2: saveItem
/**
* Updates or adds a common list item object.
*
* @param \Aimeos\MShop\Common\Item\Lists\Iface $item List item object which should be saved
* @param boolean $fetch True if the new ID should be returned in the item
*/
public function saveItem(\Aimeos\MShop\Common\Item\Iface $item, $fetch = true)
{
$iface = '\\Aimeos\\MShop\\Common\\Item\\Lists\\Iface';
if (!$item instanceof $iface) {
throw new \Aimeos\MShop\Exception(sprintf('Object is not of required type "%1$s"', $iface));
}
$context = $this->getContext();
$dbm = $context->getDatabaseManager();
$dbname = $this->getResourceName();
$conn = $dbm->acquire($dbname);
try {
$id = $item->getId();
if ($id === null) {
$type = 'insert';
} else {
$type = 'update';
}
$time = date('Y-m-d H:i:s');
$statement = $this->getCachedStatement($conn, $this->getConfigPath() . $type);
$statement->bind(1, $item->getParentId(), \Aimeos\MW\DB\Statement\Base::PARAM_INT);
$statement->bind(2, $context->getLocale()->getSiteId(), \Aimeos\MW\DB\Statement\Base::PARAM_INT);
$statement->bind(3, $item->getTypeId(), \Aimeos\MW\DB\Statement\Base::PARAM_INT);
$statement->bind(4, $item->getDomain(), \Aimeos\MW\DB\Statement\Base::PARAM_STR);
$statement->bind(5, $item->getRefId(), \Aimeos\MW\DB\Statement\Base::PARAM_STR);
$statement->bind(6, $item->getDateStart(), \Aimeos\MW\DB\Statement\Base::PARAM_STR);
$statement->bind(7, $item->getDateEnd(), \Aimeos\MW\DB\Statement\Base::PARAM_STR);
$statement->bind(8, json_encode($item->getConfig()), \Aimeos\MW\DB\Statement\Base::PARAM_STR);
$statement->bind(9, $item->getPosition(), \Aimeos\MW\DB\Statement\Base::PARAM_INT);
$statement->bind(10, $item->getStatus(), \Aimeos\MW\DB\Statement\Base::PARAM_INT);
$statement->bind(11, $time);
//mtime
$statement->bind(12, $this->getContext()->getEditor());
if ($id !== null) {
$statement->bind(13, $id, \Aimeos\MW\DB\Statement\Base::PARAM_INT);
} else {
$statement->bind(13, $time);
//ctime
}
$statement->execute()->finish();
if ($fetch === true) {
if ($id === null) {
$path = $this->getConfigPath() . 'newid';
$item->setId($this->newId($conn, $path));
} else {
$item->setId($id);
// modified false
}
}
$dbm->release($conn, $dbname);
} catch (\Exception $e) {
$dbm->release($conn, $dbname);
throw $e;
}
}