本文整理汇总了PHP中RecentChange::parseParams方法的典型用法代码示例。如果您正苦于以下问题:PHP RecentChange::parseParams方法的具体用法?PHP RecentChange::parseParams怎么用?PHP RecentChange::parseParams使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类RecentChange
的用法示例。
在下文中一共展示了RecentChange::parseParams方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: assertParseParams
/**
* @param array $expectedParseParams
* @param string|null $rawRcParams
*/
protected function assertParseParams($expectedParseParams, $rawRcParams)
{
$rc = new RecentChange();
$rc->setAttribs(['rc_params' => $rawRcParams]);
$actualParseParams = $rc->parseParams();
$this->assertEquals($expectedParseParams, $actualParseParams);
}
示例2: getLine
/**
* Generates a notification that can be easily interpreted by a machine.
* @see RCFeedFormatter::getLine
*/
public function getLine(array $feed, RecentChange $rc, $actionComment)
{
global $wgCanonicalServer, $wgServerName, $wgScriptPath;
$packet = array('id' => $rc->getAttribute('rc_id'), 'type' => RecentChange::parseFromRCType($rc->getAttribute('rc_type')), 'namespace' => $rc->getTitle()->getNamespace(), 'title' => $rc->getTitle()->getPrefixedText(), 'comment' => $rc->getAttribute('rc_comment'), 'timestamp' => (int) wfTimestamp(TS_UNIX, $rc->getAttribute('rc_timestamp')), 'user' => $rc->getAttribute('rc_user_text'), 'bot' => (bool) $rc->getAttribute('rc_bot'));
if (isset($feed['channel'])) {
$packet['channel'] = $feed['channel'];
}
$type = $rc->getAttribute('rc_type');
if ($type == RC_EDIT || $type == RC_NEW) {
global $wgUseRCPatrol, $wgUseNPPatrol;
$packet['minor'] = (bool) $rc->getAttribute('rc_minor');
if ($wgUseRCPatrol || $type == RC_NEW && $wgUseNPPatrol) {
$packet['patrolled'] = (bool) $rc->getAttribute('rc_patrolled');
}
}
switch ($type) {
case RC_EDIT:
$packet['length'] = array('old' => $rc->getAttribute('rc_old_len'), 'new' => $rc->getAttribute('rc_new_len'));
$packet['revision'] = array('old' => $rc->getAttribute('rc_last_oldid'), 'new' => $rc->getAttribute('rc_this_oldid'));
break;
case RC_NEW:
$packet['length'] = array('old' => null, 'new' => $rc->getAttribute('rc_new_len'));
$packet['revision'] = array('old' => null, 'new' => $rc->getAttribute('rc_this_oldid'));
break;
case RC_LOG:
$packet['log_id'] = $rc->getAttribute('rc_logid');
$packet['log_type'] = $rc->getAttribute('rc_log_type');
$packet['log_action'] = $rc->getAttribute('rc_log_action');
if ($rc->getAttribute('rc_params')) {
$params = $rc->parseParams();
if ($rc->getAttribute('rc_params') == serialize(false) || $params !== false) {
// From ApiQueryLogEvents::addLogParams
$logParams = array();
// Keys like "4::paramname" can't be used for output so we change them to "paramname"
foreach ($params as $key => $value) {
if (strpos($key, ':') === false) {
$logParams[$key] = $value;
continue;
}
$logParam = explode(':', $key, 3);
$logParams[$logParam[2]] = $value;
}
$packet['log_params'] = $logParams;
} else {
$packet['log_params'] = explode("\n", $rc->getAttribute('rc_params'));
}
}
$packet['log_action_comment'] = $actionComment;
break;
}
$packet['server_url'] = $wgCanonicalServer;
$packet['server_name'] = $wgServerName;
$packet['server_script_path'] = $wgScriptPath ?: '/';
$packet['wiki'] = wfWikiID();
return $this->formatArray($packet);
}