File: /var/www/vhost/disk-apps/magento.bikenow.co/vendor/laminas/laminas-json/src/Expr.php
<?php
/**
* @see https://github.com/laminas/laminas-json for the canonical source repository
* @copyright https://github.com/laminas/laminas-json/blob/master/COPYRIGHT.md
* @license https://github.com/laminas/laminas-json/blob/master/LICENSE.md New BSD License
*/
namespace Laminas\Json;
/**
* Class for Laminas\Json\Json encode method.
*
* This class simply holds a string with a native Javascript Expression,
* so objects | arrays to be encoded with Laminas\Json\Json can contain native
* Javascript Expressions.
*
* Example:
* <code>
* $foo = array(
* 'integer' => 9,
* 'string' => 'test string',
* 'function' => Laminas\Json\Expr(
* 'function () { window.alert("javascript function encoded by Laminas\Json\Json") }'
* ),
* );
*
* Laminas\Json\Json::encode($foo, false, array('enableJsonExprFinder' => true));
* // it will returns json encoded string:
* // {"integer":9,"string":"test string","function":function () {window.alert("javascript function encoded by Laminas\Json\Json")}}
* </code>
*/
class Expr
{
/**
* Storage for javascript expression.
*
* @var string
*/
protected $expression;
/**
* Constructor
*
* @param string $expression the expression to hold.
*/
public function __construct($expression)
{
$this->expression = (string) $expression;
}
/**
* Cast to string
*
* @return string holded javascript expression.
*/
public function __toString()
{
return $this->expression;
}
}