Как использовать развязанные компоненты Symfony? - PullRequest
14 голосов
/ 20 октября 2011

Любая информация о том, как использовать разделенные компоненты Symfony?

Я перечитываю документы, но по теме ничего нет, кроме общего сообщения "Они очень и очень не связаны" и 1 учебника, в котором используется Запрос и Ответ .

Существует также один неверно оцененный ответ Использование компонента маршрутизации symfony2 (вне symfony2)

Также взгляните на учебник для автономного компонента Form на самом деле меня не волнует, насколько это приятно.

Мне нужна маршрутизация , yaml и сеанс .

Ответы [ 5 ]

6 голосов
/ 25 октября 2011

Интересно, что Фабьен Потенсьер только что опубликовал пост в блоге, в котором содержатся фрагменты того, как использовать наиболее распространенные компоненты.Смотрите вторую половину этого поста для подробностей.

6 голосов
/ 23 октября 2011

Первый компонент, который вы должны использовать, это ClassLoader . Вы также можете использовать spl_autoload_register , но вы используете Symfony, так почему бы вам не использовать собственную библиотеку автозагрузки? Добавьте в начало сценария следующее:

use Symfony\Component\ClassLoader\UniversalClassLoader;

require_once '/path/to/symfony/src/Symfony/Component/ClassLoader/UniversalClassLoader.php';

$loader = new UniversalClassLoader();
$loader->register();

$loader->registerNamespaces(array(
    'Symfony' => '/path/to/symfony/src',
));

Использование компонента Yaml действительно просто:

use Symfony\Component\Yaml\Parser;
$data = Parser::parse('yaml string');

Что касается других компонентов, вам придется прочитать документацию API , так как учебных пособий пока нет.

4 голосов
/ 09 июля 2012

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

В качестве примера показано, как использовать компонент консоли, но логика аналогична другим компонентам.

3 голосов
/ 08 июня 2013

Композитор - это ответ.

Это видео здесь http://www.youtube.com/watch?v=QOldVDVYnAE содержит простой и понятный шаг за шагом, который отвечает на ваш вопрос.

0 голосов
/ 14 января 2016

Пример Symfony2

1) Установите необходимый компонент с помощью composer в новую папку

composer require symfony/yaml

2) Создайте сценарий yaml.php

<?php
require_once __DIR__.'/vendor/autoload.php';
use Symfony\Component\Yaml\Parser;
$yaml = new Parser();
$value = $yaml->parse('invoice: 3484');
var_dump($value);

3) Запустить скрипт

php yaml.php
...