個人的には100%スクリプトであるPerlのほうが好きなのですが、PHPのほうが軽かったりするとかで、カウンターやチャットなど、頻繁に呼び出されるCGIとかはPHPに書き換えたほうがいいかと思い、こういうのを作ってみました。
PerlCGI | PHP | 処理内容 |
---|---|---|
# コメント | // コメント | 行末までコメント |
# 複数行に渡る # コメント | /* 複数行に渡る コメント */ | 複数行のコメント |
@array = ('abc', 'def', 'ghi'); | $array = array('abc', 'def', 'ghi'); | 配列の代入 |
sub abc { return 1; } &abc; | function abc() { return 1; } abc(); | 関数呼び出し |
sub abc { $def = $_[0]; $ghi = $_[1]; return $def + $ghi; } &abc(3, 5); | function abc($def, $ghi) { return $def + $ghi; } abc(3, 5); | 引数つき関数呼び出し |
$ref = $ENV{'HTTP_REFERRER'}; | $ref = $_SERVER{'HTTP_REFERRER'}; または $ref = getenv('HTTP_REFERRER'); | 環境変数の参照 |
print 'aaa'; | echo 'aaa'; | 標準出力 |
($a, $b, $c) = @abc; | list($a, $b, $c) = $abc; | 複数変数に一括代入 |
foreach (@a) { print $_; } | foreach ($a as $_) { print $_; } | 配列の全要素にアクセス |
foreach (@a) { $_*=2; } | foreach ($a as $key => $value) { $a[$key]*=2; } | 配列の全要素を変更 |
$a = 5; &pp; print $a; sub pp { $a = 3; } | $a = 5; pp(); echo $a; sub pp { global $a; $a = 3; } | グローバルスコープ |
$a = 5; &pp; print $a; sub pp { local($a); $a = 3; } | $a = 5; pp(); echo $a; sub pp { $a = 3; } | ローカルスコープ |
push(@array, @list); unshift(@array, @list); pop(@array); shift(@array); | array_push($array, $list); array_unshift($array, $list); array_pop($array); array_shift($array); | 配列処理 |
if ($a) { } elsif ($b) { } else { } | if ($a) { } elseif ($b) { } else { } | 条件判断 |