javascriptによる画像ビューア

javascriptがアツい。 javascriptのコンパクトな画像ビューアがあったので、 cgiの中に入れることにした。 ヒアドキュメントを使ったら、文字化けしている。 それは、変数展開によるものであった。

print <<"END_OF_TXT";

apple
banana
$test

END_OF_TXT


とやると、$testが変数展開されてしまう。 それをさせないようにするには、

print <<'END_OF_TXT';


とすればよい。ちなみにそのjavascriptによるビューアは動きが重かったので不採用。




ファイルの拡張子を取り出そうと調べたら、以下のようなソースがあった。

$name = "aaa.jpg";

if( index($name, '.', 0) != -1){
$suffix = (split(/\./, $name))[-1];
}

print $suffix."\n";


なるほどね、ピリオドで区切ってsplitすればいいのか・・・ と思ったがsplitしたものの取り出し方がちょっと変わっている。 私だったら、

@tmp = split /\./, $name;
$suffix = pop(@tmp);


とやるところだ。 おそらくそれを一発でできるのだろうが、どういうことなのかよくわからない。

[-1]で配列の最後を意味するのかな?