CakePHP 3.0 не работает на других машинах

Я разработал небольшой проект на машине с использованием CakePHP 3.0, и мне нужно, чтобы он работал на другой машине. Я пытался установить его на нескольких других машинах.

Если я бегу composer чтобы установить CakePHP 3.0, затем я копирую свои материалы, чтобы перезаписать их, проект работает. Я пробовал это на двух машинах и без проблем до сих пор. Если я не запускаю composerи просто скопировать материал на целевой компьютер, это дает мне следующую ошибку. Я пробовал это на 3 машинах, и каждая машина дает мне это:

Fatal error: Class 'Locale' not found in /home/u113681897/public_html/vendor/cakephp/cakephp/src/I18n/I18n.php on line 229

Fatal error: Class 'Locale' not found in /home/u113681897/public_html/vendor/cakephp/cakephp/src/I18n/I18n.php on line 229

Я скопировал весь проект в этот сервер тестировать.

Я сказал вам это, потому что думал, что это как-то связано с моей проблемой. Дело в том, что я должен запустить это на машине, которая не принадлежит мне, и я не могу установить на нее композитор. /public_html/vendor/cakephp/cakephp/src/I18n/ У меня есть файлы, связанные с интернационализацией и локализацией, но мой проект никогда не будет переведен, поэтому для решения моей проблемы будет достаточно обходного пути, чтобы заставить проект игнорировать эти файлы.

Следующий код является выдержкой из (...)/I18n/I18n.php это может быть актуально:

<?php
namespace Cake\I18n;

use Aura\Intl\FormatterLocator;
use Aura\Intl\PackageLocator;
use Aura\Intl\TranslatorFactory;
use Cake\I18n\Formatter\IcuFormatter;
use Cake\I18n\Formatter\SprintfFormatter;
use Locale;

class I18n {

// lots of code here

public static function defaultLocale() {
if (static::$_defaultLocale === null) {
static::$_defaultLocale = Locale::getDefault() ?: 'en_US';
// the line above is the Line 229
}
return static::$_defaultLocale;
}

// many code here too
}

Я проверил, что другой файл также пытается получить доступ к этому Locale класс, но я не знаю, есть ли другие файлы, пытающиеся получить к нему доступ. Многие файлы изнутри проекта пытаются получить доступ к методам из I18n.php, Мне нужно, чтобы он работал, но я не могу понять, как заставить его работать.

Любая помощь будет оценена.

0

Решение

Как я только что узнал, до CakePHP 3.0установка должна быть сделана composer, как указано в 3.0 руководство по миграции:

CakePHP должен быть установлен с Composer

Поскольку CakePHP больше не может быть легко установлен через PEAR или в общий
каталог, эти параметры больше не поддерживаются. Вместо этого вы должны использовать
Composer для установки CakePHP в ваше приложение.

Так что он не будет работать на обычных бесплатных веб-хостингах.

0

Другие решения

Других решений пока нет …