JsExpression.php 1.18 KB
Newer Older
1 2 3 4 5 6 7
<?php
/**
 * @link http://www.yiiframework.com/
 * @copyright Copyright (c) 2008 Yii Software LLC
 * @license http://www.yiiframework.com/license/
 */

Qiang Xue committed
8
namespace yii\web;
9 10 11 12

use yii\base\Object;

/**
13
 * JsExpression marks a string as a JavaScript expression.
14
 *
15
 * When using [[\yii\helpers\Json::encode()]] to encode a value, JsonExpression objects
16
 * will be specially handled and encoded as a JavaScript expression instead of a string.
17
 *
18 19 20
 * @author Qiang Xue <qiang.xue@gmail.com>
 * @since 2.0
 */
21
class JsExpression extends Object
22
{
23 24 25 26
    /**
     * @var string the JavaScript expression represented by this object
     */
    public $expression;
27

28 29 30
    /**
     * Constructor.
     * @param string $expression the JavaScript expression represented by this object
31
     * @param array $config additional configurations for this object
32 33 34 35 36 37
     */
    public function __construct($expression, $config = [])
    {
        $this->expression = $expression;
        parent::__construct($config);
    }
38

39 40 41 42 43 44 45 46
    /**
     * The PHP magic function converting an object into a string.
     * @return string the JavaScript expression.
     */
    public function __toString()
    {
        return $this->expression;
    }
Zander Baldwin committed
47
}