4 * This file is part of the Symfony package.
6 * (c) Fabien Potencier <fabien@symfony.com>
8 * For the full copyright and license information, please view the LICENSE
9 * file that was distributed with this source code.
12 namespace Symfony\Component\Intl\ResourceBundle\Reader
;
15 * Reads individual entries of a resource file.
17 * @author Bernhard Schussek <bschussek@gmail.com>
19 interface StructuredBundleReaderInterface
extends BundleReaderInterface
22 * Reads an entry from a resource bundle.
24 * An entry can be selected from the resource bundle by passing the path
25 * to that entry in the bundle. For example, if the bundle is structured
32 * Then the value can be read by calling:
34 * $reader->readEntry('...', 'en', array('TopLevel', 'NestedLevel', 'Entry'));
36 * @param string $path The path to the resource bundle.
37 * @param string $locale The locale to read.
38 * @param string[] $indices The indices to read from the bundle.
39 * @param Boolean $fallback Whether to merge the value with the value from
40 * the fallback locale (e.g. "en" for "en_GB").
41 * Only applicable if the result is multivalued
42 * (i.e. array or \ArrayAccess) or cannot be found
43 * in the requested locale.
45 * @return mixed Returns an array or {@link \ArrayAccess} instance for
46 * complex data, a scalar value for simple data and NULL
47 * if the given path could not be accessed.
49 public function readEntry($path, $locale, array $indices, $fallback = true);