У меня есть контроллер Symfony2, в который я хочу включить файл, содержащий общие функции. Однако, когда я использую инструкцию require, я получаю сообщение об ошибке, что требование было неожиданным. Кроме того, в PHPStorm я также получаю сообщение об ошибке, что только функции могут быть объявлены там, где у меня есть оператор require.PHP, как «включить» код в тело класса, вне функции
Вот краткий обзор моего кода:
<?php
namespace AppBundle\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
use Symfony\Component\HttpFoundation\Session\Session;
use Symfony\Component\HttpFoundation\Response;
use ReCaptcha\ReCaptcha;
class MyController extends Controller {
private $salt_length = 10;
private $resources;
private $request;
private $session;
private $message;
private $loggedin;
/**
* @Route("/My/home")
*/
//
// My home page
//
public function homeAction() {
// bla bla
}
require 'utilities.php'; // <<==============
}
?>
Требовать в конце моего класса вызывает ошибку компилятора.
Я бы предпочел не создавать другой пакет и использовать его, потому что я хочу, чтобы область действия MyController действовала, когда вызываются функции в утилите.php.
Есть ли еще одна директива препроцессора, которая включает в себя содержимое файла в другом, чтобы достичь того, что я пытаюсь сделать?
Как ни странно, когда я смотрю, включите и требуйте, чтобы php-руководство и w3schools php-страницы, похоже, говорили, что вы можете использовать include/require, чтобы сделать именно то, что я пытаюсь сделать здесь.
Благодарим вас за любую помощь, которую кто-то может мне дать.