ICanBoogie/I18n master
  • Namespace
  • Class

Namespaces

  • ICanBoogie
    • I18n
      • Translator

Classes

  • FormattedString
  • Helpers
  • Locale
  • NumberFormatter
  • Translator

Functions

  • date_period
  • format_currency
  • format_date
  • format_datetime
  • format_number
  • format_size
  • format_time
  • get_cldr
  • get_language
  • get_locale
  • set_locale
  • t
 1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 
<?php

namespace ICanBoogie\I18n;

use ICanBoogie\PropertyNotDefined;

/**
 * A formatted string.
 *
 * The string is formatted by replacing placeholders with the values provided.
 *
 * @property-read string $format String format.
 * @property-read array $args Format arguments.
 * @property-read array $options I18n options.
 */
class FormattedString
{
    protected $format;
    protected $args;
    protected $options;

    /**
     * Initializes the {@link $format}, {@link $args} and {@link $options} properties.
     *
     * @param string $format String format.
     * @param array $args Format arguments.
     * @param array $options I18n options.
     */
    public function __construct($format, $args=null, array $options=array())
    {
        if (!is_array($args))
        {
            $args = func_get_args();
            array_shift($args);
            $options = array();
        }

        $this->format = $format;
        $this->args = (array) $args;
        $this->options = $options;
    }

    public function __get($property)
    {
        switch ($property)
        {
            case 'format': return $this->format;
            case 'args': return $this->args;
            case 'options': return $this->options;
        }

        throw new PropertyNotDefined(array($property, $this));
    }

    /**
     * Returns the string formatted with the {@link format()} function.
     *
     * @return string
     */
    public function __toString()
    {
        return t($this->format, $this->args, $this->options);
    }
}

namespace ICanBoogie;

class FormattedString extends I18n\FormattedString
{

}
ICanBoogie/I18n master API documentation generated by ApiGen