
Perlリファレンス
関数:A-C | D-F
| G-I | J-O
| P-R | S-T
| U-Z
演算子:
定義済み変数:
※Perl5.004のman
pageを参考にしています。
- ■abs( [数値]
) [デフォルト$_]
- 与えた値の絶対値を返します。
例:abs(-3) #3を返す
- ■accept→ネットワーク
-
- ■alarm→UNIXシグナル
-
- ■atan2(Y,X)
- Y/X のアークタンジェントの値を返します。
- ■bind→ネットワーク
-
- ■binmode(ファイルハンドル)
- WindowsやMS-DOS環境で、与えたファイルハンドルをバイナリデータとして扱うよう設定します。つまり、改行コードの相互変換(CRLF<->LF)を行わないようにして、バイナリデータを壊さないようにします。UNIXやMac上では何も影響ありません。
- ■bress→オブジェクト指向Perl
-
- ■caller( [さかのぼる数]
) [コンテキスト注意]
- ★スカラーコンテキスト
呼び出し元のパッケージ名を返します。evalなどから呼び出された場合はundefになります。
★リストコンテキスト
( 呼び出し元パッケージ , 呼び出し元ファイル名 , 呼び出した行 ) =
caller;
を返します。引数を指定した場合は何段階さかのぼるかを示します。この場合、
( 呼び出し元パッケージ , 呼び出し元ファイル名 , 呼び出した行 ,
サブルーチン名 , 引数 , リストコンテキストか?) =
caller(さかのぼる数);
となり、さらに呼び出し元がevalだった場合は
( 呼び出し元パッケージ , 呼び出し元ファイル名 , 呼び出した行 ,
(eval) , 引数 , リストコンテキストか? , evalした文字列 ,
requireによるものか?) = caller(さかのぼる数);
となります。
- ■chdir(ディレクトリ)
- 現在作業中のディレクトリ(カレントディレクトリ)を、引数で与えたものに変更します。成功すると1(真)、失敗するとundef(偽)を返します。
UNIXやMS-DOSのcd(chdir)コマンドと同じです。
- ■chmod(8進数パーミッション , ファイル [,
ファイル...]
) [UNIX依存]
- 2つめの引数以降の名前のファイルのパーミッションを、1つめの引数で表されたものに変更する、UNIXのchmodコマンドと同じ働きをする関数です。パーミッション変更に成功したファイル数を返します。
◇ワンポイントアドバイス
1つめの引数は8進数でそのまま書くかoct()関数で8進数と認識させるかをしてやらないととんでもない結果を招きます。つまり……
chmod( 0644 , "ponapalt.txt" ); =OK
chmod( '0644' , "ponapalt.txt"
); =だめ…テキストの"0644"=10進数に
chmod( oct('0644') , "ponapalt.txt"
); =これなら大丈夫
- ■chomp( [変数orリスト]
) [デフォルト$_]
- 引数として渡された変数の最後の文字がもし$/(=ふつうは改行)と同じなら、その最後の文字を削除します。リスト(配列とか)を渡した場合はそのリストの要素それぞれについてchomp()を実行します。
$/が空なら、末尾の空行をすべて削除します("う\nあ\n\n\n" →
"う\nあ")。
返される値はchomp()で削除された文字数です。
- ■chop( [変数orリスト]
) [デフォルト$_]
- 引数として渡された変数の最後の文字を削除します。リスト(配列とか)を渡した場合はそのリストの要素それぞれについてchop()を実行します。
返される値は削除された最後の文字です(chompと異なり文字数ではありません)。
◇ワンポイントアドバイス
chomp、chopともに文字列の最後の改行文字を取り除く、というのが主な用途です。最後の文字が必ず改行であるとわかっている場合にはchompではなくchopを使った方が当然速度は向上します。
- ■chown( UserID , GroupID , ファイル [,
ファイル...]
) [UNIX依存]
- 3つめの引数以降の名前のファイルの所有者を、1つめの引数と2つめの引数に渡されるUserIDとGroupIDで表されたものに変更します。UNIXのchownコマンドと理屈は同じですが、ユーザー名とグループ名ではなく、ID番号を渡すということに気を付けましょう。
ユーザー名をUID/GIDに変換するには次のようにします。
($login,$pass,$uid,$gid) = getpwnam($user)
所有者変更に成功したファイル数を返します。
- ■chr( [ASCII]
) [デフォルト$_]
- 1つめの引数のASCII文字コードに対応する文字を返します。
例:chr(120) #xを返す
◇ワンポイントアドバイス
chrのうまい使い方は、やはり置換演算子の s///;
とhex関数を併用した、URLエンコードの復元でしょう。
s/%([\da-f]{2})/chr(hex($1))/eig;
- ■chroot→UNIX依存・一般ユーザー使用不可
-
- ■close( ファイルハンドル/式/変数 )
- open()で開いたファイルハンドル(やパイプ)を閉じます。成功すると1(真)、失敗するとundef(偽)を返します。
なお、1つめの引数はファイルハンドルそのものである必要はありません。すなわち
$handle = 'FH';
open($handle);
close($handle);
など、ファイルハンドル名を入れた変数や、ファイルハンドル名を返す関数などでもOKです。
- ■closedir( ディレクトリハンドル )
- opendir()で開いたディレクトリハンドルを閉じます。close()のディレクトリ版です。
- ■connect→ネットワーク
-
- ■cos( [ラジアン]
) [デフォルト$_]
- コサイン関数です。それだけ(汗)
引数は「度」でなく「ラジアン」が単位であることに気を付けて下さい。180度=π(3.14)で換算できます。
- ■crypt( 暗号化したい文字列 , 暗号の種 )
- 暗号化します。「暗号化したい文字列」はふつう8文字まで、暗号の種は半角数字・アルファベット・"."・"/"の中から適当に2文字を選びだして与えます。
暗号化された文字列のうち、(Linuxなどの場合)最初の二文字が「暗号の種」とまったく同じものになりますので、パスワード照合などの際はユーザーから与えられた文字列をその最初の二文字を種として暗号化し、同じものかどうか比べるのが最も効率的でしょう。
◇ワンポイントアドバイス
考えてみれば当たり前の事ですが、decrypt()なんていう暗号化したものを戻す関数はありません。詳しい説明はどこかに転がっているであろう暗号理論の記述に任せるとして、ともかくcrypt()は一方通行です。
-
Return : Perl
Top