Skip to content

Commit

Permalink
feature #4425 Updating component usage to use composer require (weave…
Browse files Browse the repository at this point in the history
…rryan)

This PR was merged into the 2.3 branch.

Discussion
----------

Updating component usage to use composer require

| Q             | A
| ------------- | ---
| Doc fix?      | yes
| New docs?     | no
| Applies to    | 2.3+
| Fixed tickets | n/a

Hi guys!

This shows using the new `composer require` command instead of manually updating `composer.json`. It shortens and simplifies things quite a bit 😀

Thanks!

Commits
-------

d64fae2 Adding details about a specific version
8a50c9c Updating component usage to use composer require
  • Loading branch information
weaverryan committed Nov 7, 2014
2 parents 1ce9dc5 + d64fae2 commit 8259d71
Showing 1 changed file with 23 additions and 40 deletions.
63 changes: 23 additions & 40 deletions components/using_components.rst
Original file line number Diff line number Diff line change
Expand Up @@ -20,40 +20,39 @@ Using the Finder Component

**1.** If you're creating a new project, create a new empty directory for it.

**2.** Create a new file called ``composer.json`` and paste the following into it:
**2.** Open a terminal and use Composer to grab the library.

.. code-block:: json
.. code-block:: bash
{
"require": {
"symfony/finder": "2.3.*"
}
}
$ composer require symfony/finder
If you already have a ``composer.json`` file, just add this line to it. You
may also need to adjust the version (e.g. ``2.2.2`` or ``2.3.*``).
The name ``symfony/finder`` is written at the top of the documentation for
whatever component you want.

You can research the component names and versions at `packagist.org`_.
.. tip::

**3.** `Install composer`_ if you don't already have it present on your system:
If you get a command not found for ``composer``, you'll need to
`Install composer`_. Depending on how you install, you may end up with
a ``composer.phar`` file in your directory. In that case, no worries!
Just run ``php composer.phar require symfony/finder``.

**4.** Download the vendor libraries and generate the ``vendor/autoload.php`` file:
If you know you need a specific version of the library, add that to the command:

.. code-block:: bash
$ php composer.phar install
$ composer require symfony/finder:~2.3
**5.** Write your code:
**3.** Write your code!

Once Composer has downloaded the component(s), all you need to do is include
the ``vendor/autoload.php`` file that was generated by Composer. This file
takes care of autoloading all of the libraries so that you can use them
immediately::

// File: src/script.php
// File example: src/script.php

// update this to the path to the "vendor/" directory, relative to this file
require_once '../vendor/autoload.php';
require_once __DIR__.'../vendor/autoload.php';

use Symfony\Component\Finder\Finder;

Expand All @@ -62,33 +61,18 @@ immediately::

// ...

.. tip::

If you want to use all of the Symfony Components, then instead of adding
them one by one:
Using all of the Components
---------------------------

.. code-block:: json
If you want to use all of the Symfony Components, then instead of adding
them one by one, you can include the ``symfony/symfony`` package:

{
"require": {
"symfony/finder": "2.3.*",
"symfony/dom-crawler": "2.3.*",
"symfony/css-selector": "2.3.*"
}
}
you can use:

.. code-block:: json
.. code-block:: bash
{
"require": {
"symfony/symfony": "2.3.*"
}
}
$ composer require symfony/symfony
This will include the Bundle and Bridge libraries, which you may not
actually need.
This will also include the Bundle and Bridge libraries, which you may or
may not actually need.

Now what?
---------
Expand All @@ -100,4 +84,3 @@ And have fun!

.. _Composer: http://getcomposer.org
.. _Install composer: http://getcomposer.org/download/
.. _packagist.org: https://packagist.org/

0 comments on commit 8259d71

Please sign in to comment.