本文整理汇总了PHP中ApiQueryBase::addRowInfo_title方法的典型用法代码示例。如果您正苦于以下问题:PHP ApiQueryBase::addRowInfo_title方法的具体用法?PHP ApiQueryBase::addRowInfo_title怎么用?PHP ApiQueryBase::addRowInfo_title使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ApiQueryBase
的用法示例。
在下文中一共展示了ApiQueryBase::addRowInfo_title方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: addRowInfo
protected function addRowInfo($prefix, $row)
{
$vals = array();
// ID
if (isset($row->{$prefix . '_id'})) {
$vals[$prefix . 'id'] = intval($row->{$prefix . '_id'});
}
// Title
$title = ApiQueryBase::addRowInfo_title($row, $prefix . '_namespace', $prefix . '_title');
if ($title) {
if (!$title->userCanRead()) {
return false;
}
$vals['ns'] = $title->getNamespace();
$vals['title'] = $title->getPrefixedText();
}
switch ($prefix) {
case 'page':
// page_is_redirect
@($tmp = $row->page_is_redirect);
if ($tmp) {
$vals['redirect'] = '';
}
break;
case 'rc':
// PageId
@($tmp = $row->rc_cur_id);
if (!is_null($tmp)) {
$vals['pageid'] = intval($tmp);
}
@($tmp = $row->rc_this_oldid);
if (!is_null($tmp)) {
$vals['revid'] = intval($tmp);
}
if (isset($row->rc_last_oldid)) {
$vals['old_revid'] = intval($row->rc_last_oldid);
}
$title = ApiQueryBase::addRowInfo_title($row, 'rc_moved_to_ns', 'rc_moved_to_title');
if ($title) {
if (!$title->userCanRead()) {
return false;
}
$vals['new_ns'] = $title->getNamespace();
$vals['new_title'] = $title->getPrefixedText();
}
if (isset($row->rc_patrolled)) {
$vals['patrolled'] = '';
}
break;
case 'log':
// PageId
@($tmp = $row->page_id);
if (!is_null($tmp)) {
$vals['pageid'] = intval($tmp);
}
if ($row->log_params !== '') {
$params = explode("\n", $row->log_params);
if ($row->log_type == 'move' && isset($params[0])) {
$newTitle = Title::newFromText($params[0]);
if ($newTitle) {
$vals['new_ns'] = $newTitle->getNamespace();
$vals['new_title'] = $newTitle->getPrefixedText();
$params = null;
}
}
if (!empty($params)) {
$this->getResult()->setIndexedTagName($params, 'param');
$vals = array_merge($vals, $params);
}
}
break;
case 'rev':
// PageID
@($tmp = $row->rev_page);
if (!is_null($tmp)) {
$vals['pageid'] = intval($tmp);
}
}
// Type
@($tmp = $row->{$prefix . '_type'});
if (!is_null($tmp)) {
$vals['type'] = $tmp;
}
// Action
@($tmp = $row->{$prefix . '_action'});
if (!is_null($tmp)) {
$vals['action'] = $tmp;
}
// Old ID
@($tmp = $row->{$prefix . '_text_id'});
if (!is_null($tmp)) {
$vals['oldid'] = intval($tmp);
}
// User Name / Anon IP
@($tmp = $row->{$prefix . '_user_text'});
if (is_null($tmp)) {
@($tmp = $row->user_name);
}
if (!is_null($tmp)) {
$vals['user'] = $tmp;
//.........这里部分代码省略.........