2013-06-02 22 views

Odpowiedz

7

a ||= b jest podobna do a = a || b, więc:

$sheet->{MaxCol} ||= $sheet->{MinCol}; 

jest podobny do:

$sheet->{MaxCol} = $sheet->{MaxCol} || $sheet->{MinCol}; 

Per komentarzu Ikegami za różnica jest taka, że ​​a ||= b; ocenia tylko a raz i ocenia a przed b. Ma to znaczenie, gdy a jest magiczne lub nie jest skalarem.

5
$sheet -> {MaxCol} ||= $sheet -> {MinCol}; 

mieć taki sam skutek jak

if (!$sheet->{MaxCol}) { $sheet->{MaxCol} = $sheet->{MinCol}; } 

lub

$sheet->{MaxCol} = $sheet->{MinCol} unless $sheet->{MaxCol}; 
+0

+1 Więcej jasno wyjaśnia co to właściwie oznacza – Andomar