Tôi đã chuyển ứng dụng từ máy chủ Ubuntu 11.04 (Natty Narwhal) sang máy chủ Red Hat Enterprise Linux (RHEL) vào cuối tuần. log lỗi của tôi là đầy đủ các lỗi PHP trong dòng chủ đề tham khảo các chức năng sau:T_PAAMAYIM_NEKUDOTAYIM không mong đợi, mong T_NS_Separator
function wfTalkHereArticleFromTitle(&$title, &$article) {
global $wgRequest, $wgTalkHereNamespaces;
if (isset($title->noTalkHere))
return true; //Stop recursion
$action = $wgRequest->getVal('action' );
$oldid = $wgRequest->getVal('oldid' );
$diff = $wgRequest->getVal('diff' );
if ($action == 'purge')
$action = NULL; //"purge" is not considered an action in this context
if ($action || $oldid || $diff)
return true;
$ns = $title->getNamespace();
if (!Namespace::isTalk($ns) && Namespace::canTalk($ns) && $title->exists()
&& (!$wgTalkHereNamespaces || in_array($ns, $wgTalkHereNamespaces))) {
$tns = Namespace::getTalk($ns);
$talk = Title::makeTitle($tns, $title->getDBKey());
if ($talk && $talk->userCan('read')) {
$t = clone $title;
$t->noTalkHere = true; //Stop recursion
$a = MediaWiki::articleFromTitle($t);
$article = new TalkHereArticle($a, $talk);
}
}
return true;
}
Các lỗi được ném vào báo cáo kết
If (!Namespace::isTalk($ns)
. Lỗi này là lỗi mới cho tôi. Làm thế nào tôi có thể giải quyết nó?
tôi đã thay đổi mã vi phạm đến:
if (!Ns::isTalk($ns) && Ns::canTalk($ns) && $title->exists()
&& (!$wgTalkHereNamespaces || in_array($ns, $wgTalkHereNamespaces))) {
$tns = Ns::getTalk($ns);
$talk = Title::makeTitle($tns, $title->getDBKey());
if ($talk && $talk->userCan('read')) {
$t = clone $title;
$t->noTalkHere = true; //Stop recursion
$a = MediaWiki::articleFromTitle($t);
$article = new TalkHereArticle($a, $talk);
}
}
return true;
đó có đủ để sửa chữa các lỗi, ít nhất là trong tập tin này?
@Charles hehe lỗi không viết đúng chính tả :-P – Neal
Bằng cách này, các lỗi thực sự đánh vần "PAAMAYIM NEKUDOTAYIM" (hữu ích khi Google). Như Neal đề cập, "PAAMAYIM NEKUDOTAYIM" là tiếng Do Thái cho dấu hai chấm (các tác giả gốc của PHP là Israel). –
Pfft, tôi là một người đánh tag, không phải là một nazi speeling. – Charles