123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100 |
- <?php
- /*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
- namespace Symfony\Component\HttpKernel\DataCollector\Util;
- @trigger_error('The '.__NAMESPACE__.'\ValueExporter class is deprecated since version 3.2 and will be removed in 4.0. Use the VarDumper component instead.', E_USER_DEPRECATED);
- /**
- * @author Bernhard Schussek <bschussek@gmail.com>
- *
- * @deprecated since version 3.2, to be removed in 4.0. Use the VarDumper component instead.
- */
- class ValueExporter
- {
- /**
- * Converts a PHP value to a string.
- *
- * @param mixed $value The PHP value
- * @param int $depth Only for internal usage
- * @param bool $deep Only for internal usage
- *
- * @return string The string representation of the given value
- */
- public function exportValue($value, $depth = 1, $deep = false)
- {
- if ($value instanceof \__PHP_Incomplete_Class) {
- return sprintf('__PHP_Incomplete_Class(%s)', $this->getClassNameFromIncomplete($value));
- }
- if (is_object($value)) {
- if ($value instanceof \DateTimeInterface) {
- return sprintf('Object(%s) - %s', get_class($value), $value->format(\DateTime::ATOM));
- }
- return sprintf('Object(%s)', get_class($value));
- }
- if (is_array($value)) {
- if (empty($value)) {
- return '[]';
- }
- $indent = str_repeat(' ', $depth);
- $a = array();
- foreach ($value as $k => $v) {
- if (is_array($v)) {
- $deep = true;
- }
- $a[] = sprintf('%s => %s', $k, $this->exportValue($v, $depth + 1, $deep));
- }
- if ($deep) {
- return sprintf("[\n%s%s\n%s]", $indent, implode(sprintf(", \n%s", $indent), $a), str_repeat(' ', $depth - 1));
- }
- $s = sprintf('[%s]', implode(', ', $a));
- if (80 > strlen($s)) {
- return $s;
- }
- return sprintf("[\n%s%s\n]", $indent, implode(sprintf(",\n%s", $indent), $a));
- }
- if (is_resource($value)) {
- return sprintf('Resource(%s#%d)', get_resource_type($value), $value);
- }
- if (null === $value) {
- return 'null';
- }
- if (false === $value) {
- return 'false';
- }
- if (true === $value) {
- return 'true';
- }
- return (string) $value;
- }
- private function getClassNameFromIncomplete(\__PHP_Incomplete_Class $value)
- {
- $array = new \ArrayObject($value);
- return $array['__PHP_Incomplete_Class_Name'];
- }
- }
|