Problema Login Moodle 3.4 - parse error arquivo lib.php

Problema Login Moodle 3.4 - parse error arquivo lib.php

por Murilo de Oliveira Ferreira -
Número de respostas: 2

Bom dia Srs. e Srtas.

Tinha o moodle versão 3.4 hospedado em um Serviços httpd (apache local) e funcionava perfeitamente o acesso, atualmente migrei para o Painel (Plesk Onyx 17.5.3) a página inicial carrega normalmente, porém logo após efetuar o login resulta no anexo (login_erro.jpg), sendo que não alterei nada no arquivo "lib.php".


Vide mensagen "Parse error: syntax error, unexpected ':', expecting ';' or '{' in /var/www/vhosts/srv01open.localdomain/httpdocs/moodle/calendar/lib.php on line 1047"


Considerando a mensagem tentei inserir o valor experado ';' ou  '{' e também resultou no mesmo erro, abaixo disponibilizo o código que estão alertando o problema.


/* Conteúdo que se inicia na linha 1047 , caracter com possível erro é o ':' na linha abaixo/*

 public static function create($time, int $courseid, int $categoryid = null) : calendar_information {
        $calendar = new static(0, 0, 0, $time);
        if ($courseid != SITEID && !empty($courseid)) {
            // Course ID must be valid and existing.
            $course = get_course($courseid);
            $calendar->context = context_course::instance($course->id);

            if (!$course->visible) {
                require_capability('moodle/course:viewhiddencourses', $calendar->context);
            }

            $courses = [$course->id => $course];
            $category = (\coursecat::get($course->category))->get_db_record();
        } else if (!empty($categoryid)) {
            $course = get_site();
            $courses = calendar_get_default_courses();

            // Filter available courses to those within this category or it's children.
            $ids = [$categoryid];
            $category = \coursecat::get($categoryid);
            $ids = array_merge($ids, array_keys($category->get_children()));
            $courses = array_filter($courses, function($course) use ($ids) {
                return array_search($course->category, $ids) !== false;
            });
            $category = $category->get_db_record();

            $calendar->context = context_coursecat::instance($categoryid);
        } else {
            $course = get_site();
            $courses = calendar_get_default_courses();
            $category = null;

            $calendar->context = context_system::instance();
        }

        $calendar->set_sources($course, $courses, $category);

        return $calendar;
    }

/* final do código*/


Obrigado.

Anexo login_erro.JPG
Contagem das avaliações:  -
Em resposta à Murilo de Oliveira Ferreira

[Resolvido] Problema Login Moodle 3.4 - parse error arquivo lib.php

por Murilo de Oliveira Ferreira -

Boa tarde Srs e Srtas.


Apenas para conhecimento acabei descobrindo a solução, reinstalei o moodle no servidor e permitiu o acesso normalmente.


Obrigado.

Contagem das avaliações:  -
Em resposta à Murilo de Oliveira Ferreira

Re: Problema Login Moodle 3.4 - parse error arquivo lib.php

por Willian Mano -

Esse problema ocorreu por causa da versão do seu PHP. Nas versões mais atuais do PHP é possível declar o tipo de retorno, bem como o tipo das variáveis(tipos escalares).

Portanto a solução é atualizar o PHP para a versão mais atual.

Contagem das avaliações:  -