各种数据操作的写法 data dm delta



数据查询

$db = JFactory::getDBO();
$query = $db->getQuery(true);
$query->select('contact.user_id, MAX(contact.id) AS id, contact.language');
$query->from('#__contact_details AS contact');
$query->where('contact.published = 1');
$query->group('contact.user_id, contact.language');
$query->order('contact.ordering');
$db->setQuery($query);
$rows = $db->loadObjectList();

SQL数据查询


$db = JFactory::getDbo();
$sql = 'SELECT * FROM #__users WHERE state=1';
$db->setQuery($sql);
$rows = $db->loadObjectList();
foreach($rows as $row) {
    echo $row->name;
    echo $row->email;
}

所有UserID的数组


$db = JFactory::getDbo();
$sql = 'SELECT id FROM #__users WHERE state=1';
$db->setQuery($sql);
$userIds = $db->loadResultArray();
echo implode(', ', $userIds);

SQL更新记录


$db = JFactory::getDbo();
$title = '????';
$sql = 'UPDATE #__content SET title='.$db->Quote($title).' WHERE id=1';
$db->setQuery($sql);
$db->query();

user存取数据


$user = new JUser();
$user->load($this->userId);
$user->name = 'newname';
$user->save();

parameter存取数据


$table = JTable::getInstance( 'mytable'); 
$table->load($id);
$params = new JParameter($table->params);
$params->set($key,$value);
$table->params = $params->toString();
$table->store();

基于JTable存取数据,必须有JTable实例

$table = JTable::getInstance( 'mytable', 'XxxTable'); 
$table->load($id);
$table->title = '???';
$table->store();

如果table与model类在同一个组件里,可以用JModel::getTable

$table = $this->getTable( 'mytable', 'XxxTable'); 
$table->load($id);

get item attribute

$articleParams = new JRegistry;
$articleParams->loadString($item->attribs);
$item->alternative_readmore = $articleParams->get('alternative_readmore');

set item attribute

$table = JTable::getInstance( 'mytable');
$table->load($id);
$articleParams = new JRegistry;
$table->attribs = $articleParams->toString();
$table->store();

基于JModel存取数据,必定存在JModel实例

$model = JModel::getInstance('Articles', 'ContentModel');
$model->setState('filter.state', 1);
$model->setState('list.ordering', 'publish_up');
$items = $model->getItems();
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值