Birisi bana php kod parçası açıklayabilir

0 Cevap

Ben ilk yarısını anlıyorum ama ikinci yarısı ile mücadele ediyorum. Özellikle hat "(anahtar ($ a)! == $ I)" Ben anlayış durdurmak nerede. Bu dizi $ a anahtar endeks sayaç eşit değilse $ i sonra boolean değişken olarak $ isList false atanır ama bu ifadenin signifigance anlamıyorum söylüyor. Ne anahtarı ($ a)! == $ I dizi hakkında yararlı bize neyi $ a? Bu deyimi aşağıdaki hatları da sıyrılmak bana. Bana açıklayabilir misiniz? Teşekkür ederim

function getJsCode($a) {
if (is_null($a)) return 'null';
if ($a === false) return 'false';
if ($a === true) return 'true';
if (is_scalar($a)) {
    $a = addslashes($a);
    $a = str_replace("\n", '\n', $a);
    $a = str_replace("\r", '\r', $a);
    return "'".$a."'";
}

$isList = true;
for ($i=0, reset($a); $i<count($a); $i++, next($a))
    if (key($a) !== $i) { $isList = false; break; }
$result = array();
if ($isList) {
    foreach ($a as $v) $result[] = getJsCode($v);
    return '[ ' . join(',', $result) . ' ]';
} else {
    foreach ($a as $k=>$v) $result[] = getJsCode($k) . ': ' . getJsCode($v);
    foreach ($a as $k=>$v) $result[] = $k . ': ' . getJsCode($v);
    return '{ ' . join(', ', $result) . ' }';
}
}

0 Cevap