Я пытаюсь отредактировать плагин PHPWord, чтобы он лучше соответствовал моим потребностям. Создав список разделов, который содержит основной класс PHPWord, я могу сделать так, чтобы я мог вставлять разделы в любом порядке в документе, а не просто фиксированный список, который я не могу изменить.
Но я получаю сообщение об ошибке syntax error, unexpected 'new'
, и это сводит меня с ума.
Кто-нибудь еще знает больше об этом инструменте PHPWord? Я не получаю ответов от их трекера / форума Github.
Что-то вроде того, что у них есть свои определенные классы, которые используют инструменты, и мне нужно как-то добавить их в качестве ресурса? Я не могу просто добавить это почему-то.
Большое спасибо!
РЕДАКТИРОВАТЬ:
Я попытался создать новый объект в этой строке, ДРУГОЙ, чем array() или SplDoublyLinkedList(), и независимо от того, какой другой объект я пытаюсь назначить, который находится за пределами области плагина, я получаю «новую» синтаксическую ошибку.
Я также пробовал new ArrayObject();
, и я все еще получаю сообщение об ошибке.
PHPWord использует Autoloader
? Это их код автозагрузчика, нужно ли мне как-то включать какие-то дополнительные классы, которые я хочу использовать здесь?
namespace PhpOffice\PhpWord;
/**
* Autoloader
*/
class Autoloader
{
/** @const string */
const NAMESPACE_PREFIX = 'PhpOffice\\PhpWord\\';
/**
* Register
*
* @param bool $throw
* @param bool $prepend
* @return void
*/
public static function register($throw = true, $prepend = false)
{
spl_autoload_register(array(new self, 'autoload'), $throw, $prepend);
}
/**
* Autoload
*
* @param string $class
* @return void
*/
public static function autoload($class)
{
$prefixLength = strlen(self::NAMESPACE_PREFIX);
if (0 === strncmp(self::NAMESPACE_PREFIX, $class, $prefixLength)) {
$file = str_replace('\\', DIRECTORY_SEPARATOR, substr($class, $prefixLength));
$file = realpath(__DIR__ . (empty($file) ? '' : DIRECTORY_SEPARATOR) . $file . '.php');
if (file_exists($file)) {
/** @noinspection PhpIncludeInspection Dynamic includes */
require_once $file;
}
}
}
}
private $sections = array();
Кому:private $sections = new SplDoublyLinkedList();
и я получаю сообщение об ошибке в синтаксисе'new'
. - person Maggie S.   schedule 14.05.2015