game2006api/webapp/mt/MarketGoods.php
aozhiwei 5a93f1ed81 1
2022-01-25 19:19:52 +08:00

55 lines
1.2 KiB
PHP

<?php
namespace mt;
require_once('mt/AttrHelper.php');
require_once('mt/StrHelper.php');
use phpcommon;
class MarketGoods {
public static function get($id)
{
return getXVal(self::getMetaList(), $id, null);
}
public static function traverseMeta($cb)
{
foreach (self::getMetaList() as $meta) {
$cb($meta);
}
}
public static function getBatchMetas($batchId)
{
self::mustBeBatchHash();
return getXVal(self::$batchHash, $batchId, null);
}
protected static function getMetaList()
{
if (!self::$metaList) {
self::$metaList = getMetaTable('goods@market.php');
}
return self::$metaList;
}
protected static function mustBeBatchHash()
{
if (!self::$batchHash) {
self::$batchHash = array();
self::traverseMeta(function ($meta) {
if (!getXVal(self::$batchHash, $meta['batch_id'], null)) {
self::$batchHash[$meta['batch_id']] = array();
}
array_push(self::$batchHash[$meta['batch_id']], $meta);
});
}
}
protected static $metaList;
protected static $batchHash;
}