Perl入門ゼミ

テキスト処理、Linuxサーバー管理、Web開発ならPerl
  1. Perl
  2. Mojolicious

パラメーターをハッシュリファレンスに変換する / Mojolicious

パラメーターをハッシュリファレンスに変換するには、Mojo::Parametersクラスのto_hashメソッドを使用します。

my $hash_data = $params->to_hash;

Mojolicious::Liteのサンプルです。パラメーター(クエリ文字列、POSTデータ、URLの中でキャプチャされたもの)を、ハッシュリファレンスに変換しています。

# Mojolicious::Lite
get '/' => sub {
  my $self = shift;
  my $param = $self->req->params->to_hash;
};

Mojolicious::ControllerオブジェクトのreqメソッドでMojo::Message::Requestオブジェクトを取得し、Mojo::Message::RequestオブジェクトのparamsメソッドでMojo::Parametersオブジェクトを取得し、Mojo::Parametersオブジェクトからto_hashメソッドを呼び出しています。

Mojoliciousのサンプルです。

# Mojolicious
package MyApp::Book;

use Mojo::Base 'Mojolicious::Controller';

sub register {
  my $self = shift;
  my $param = $self->req->params->to_hash;
}
  • Perlとはテキスト処理の記述性とパフォーマンスに優れ、正規表現が言語に組み込まれているプログラミング言語です。
  • Linuxサーバーでのフィルタリングプログラム、複数行の文字列を処理、ファイル内容の検索・置換などが得意
  • Perlはgitopensslなど広く普及したUnix/Linuxミドルウェアの補助ツールとして採用実績あり。後方互換性とポータビリティの高さがひとつの理由と推測。
  • 大量のテキストを扱うWeb開発も得意。ロングテールSEOを意識したWebサイト、アドテクやソーシャルゲームでの50ms以内のJSONの生成など。