/** * @author Anthony Boutinov * * @param array $array Массив * @param bool $doKeys (Опционально) Выводить ли названия ключей. По умолчанию, НЕТ * @param bool $wrapTopMostArray (Опционально) Оборачивать ли скобками корневой массив. По умолчанию, ДА * @param bool $hugValues (Опционально) Оборачивать ли кавычками значения, если они не являются числовыми. По умолчанию, ДА * @param string $wrapperLeft (Опционально) Вид левой скобки, оборачивающей массив * @param string $wrapperRight (Опционально) Вид правой скобки, оборачивающей массив * @param string $valueHuggerLeft (Опционально) Вид левых кавычек, оборачивающих значения * @param string $valueHuggerRight (Опционально) Вид правых кавычек, оборачивающих значения * @param string $keyHuggers (Опционально) Вид кавычек, оборачивающих ключи * @param string $keyFollowers (Опционально) Вид разделителя между ключом и значением, например " => " * @param string $keyValuePairWrapperLeft (Опционально) Вид левой скобки, оборачивающей пару ключ-значение * @param string $keyValuePairWrapperRight (Опционально) Вид правой скобки, оборачивающей пару ключ-значение * @param bool $isTopmost (Опционально) Является ли текущий массив корневым, внутри которого находятся вложенные массивы (всегда true, значение меняется только при рекурсивном выполнении функции) * * @retval string Строка с содержимым массива в заданном форматировании */ public static function arrayToString($array, $doKeys = false, $wrapTopMostArray = true, $hugValues = true, $wrapperLeft = null, $wrapperRight = null, $valueHuggerLeft = null, $valueHuggerRight = null, $keyHuggers = null, $keyFollowers = null, $keyValuePairWrapperLeft = null, $keyValuePairWrapperRight = null, $isTopmost = true) { // default values if ($wrapperLeft == null) { $wrapperLeft = '['; } if ($wrapperRight == null) { $wrapperRight = ']'; } if ($valueHuggerLeft == null) { $valueHuggerLeft = '\''; } if ($valueHuggerRight == null) { $valueHuggerRight = '\''; } if ($keyHuggers == null) { $keyHuggers = '\''; } if ($keyFollowers == null) { $keyFollowers = ','; } if ($keyValuePairWrapperLeft == null) { $keyValuePairWrapperLeft = '['; } if ($keyValuePairWrapperRight == null) { $keyValuePairWrapperRight = ']'; } $out = $wrapTopMostArray == true || $isTopmost == false ? $wrapperLeft : ''; $i = 0; foreach ($array as $key => $value) { $localValueHuggers = $hugValues == true ? is_numeric($value) || is_array($value) ? ['', ''] : [$valueHuggerLeft, $valueHuggerRight] : ['', '']; $out = $out . ($i++ == 0 ? '' : ',') . ($doKeys == true ? $keyValuePairWrapperLeft . $keyHuggers . $key . $keyHuggers . $keyFollowers : '') . $localValueHuggers[0] . (is_array($value) ? CommonFunctions::arrayToString($value, $doKeys, $wrapTopMostArray, $hugValues, $wrapperLeft, $wrapperRight, $valueHuggerLeft, $valueHuggerRight, $keyHuggers, $keyFollowers, $keyValuePairWrapperLeft, $keyValuePairWrapperRight, false) : $value) . $localValueHuggers[1] . ($doKeys ? $keyValuePairWrapperRight : ''); } $out = $out . ($wrapTopMostArray == true || $isTopmost == false ? $wrapperRight : ''); return $out; }
} else { echo CommonFunctions::arrayToString($database->getMainStatsTable(30), false, false, false); } ?> ]); var options = { animation: {duration: 1000, startup: true, easing: 'inAndOut' }, explorer: {}, selectionMode: 'single', tooltip: {trigger: 'selection'}, backgroundColor: { fill:'transparent' }, fontName: 'Fontatigo, "Helvetica Nueue", Helvetica, Arial, "Lucida Grande", sans-serif', fontSize: 14, colors: <?php echo CommonFunctions::arrayToString($chartColors); ?> , chartArea: {left:0,top:0,width:'100%',height:'<?php echo $charthHeight; ?> '}, tooltip: {isHtml: true}, hAxis: { textStyle:{color: '#FFF'}, baselineColor: 'none', gridlines: {color: 'none', count: 0} }, vAxis: { textStyle:{color: '#FFF'}, textPosition: 'in',