タグ

ブックマーク / fbis.hatenablog.com (4)

  • PerlとPHPのソート処理 - Unknown::Programming

    良く書き方を忘れがちなソート。 特にPerlPHP両方使ってるとPerlはこうだけど、PHPはどうだっけ?とかよくあるのでここらでまとめをしておく。 配列を文字列で昇順・降順ソート # 昇順 @sarray = sort @array; @sarray = sort { $a cmp $b } @array; # 降順 @sarray = sort { $b cmp $a } @array; Perlのsort関数はブロック表記を省略するとデフォルトで昇順ソートになります。 <?php // 昇順 sort( $array , SORT_STRING ); // 降順 rsort( $array , SORT_STRING ); PHPのsort関数は引数に渡された配列をソートする。 第二引数を指定しなくも動くには動くが、省略すると値に数値と文字が混在してるときにおかしくなるので明示的に

    PerlとPHPのソート処理 - Unknown::Programming
  • メソッドの引数を柔軟にするあれの件 - Unknown::Programming

    関数/メソッドのオプションを柔軟に受け渡す - Blog::koyhoge::Tech を読んで感じたことでも。 やっぱ後から引数追加とかって結構あるんで予めオプション系の引数を増やしやすいようにするわけです。 引用元の例では固定引数が一つとオプション用の引数が渡せるようになっています。 <?php function getItemsByMode($key, $options = null) // 固定引数 $key // オプション引数 $options これだとオプション引数の追加はいくらでも出来ますが、下記のように省略可能な引数を増やしたい場合に困ります。 <?php function getItemsByMode($key, $key2 = null, $options = null) // 固定引数 $key // 省略可引数 $key2 // オプション引数 $options

  • CatalystでPOSTの生データを取得する - Unknown::Programming

    ハマッたのでメモ。 以前どこかでPOSTの生データを取得するには$c->req->bodyから取れるというのをうろ覚えしてたのでやってみたんだけど取れなかった。 ちゃーんとPOSTでリクエストしているのに取れないわけだ。 ちなみにコードは以下。 use LWP::UserAgent; my $url = 'http://example.com/hoge'; my $query_string = "foobarbaz"; my $ua = LWP::UserAgent->new; my $req = HTTP::Request->new(POST => $url); $req->content_type('application/x-www-form-urlencoded'); $req->content($query_string); my $res = $ua->request($req

    CatalystでPOSTの生データを取得する - Unknown::Programming
  • 携帯の公式のユーザIDを取得する - Unknown::Programming

    昨今のHTTP::MobileAgentのプラグイン話を真っ向から別の道に行ってる感はややありますが、前回作った携帯のユーザーIDを取得する - Unknown::Programmingのキャリア公式版です。 ネーミングですが、前回のがHTTP::MobileUserIDだったのに対して今回はHTTP::MobileUIDです。ややこしいったらありゃしない。 package HTTP::MobileUID; use strict; use warnings; use base qw/Class::Data::Accessor/; __PACKAGE__->mk_classaccessors(qw/agent uid convert_uid/); our $VERSION = '0.01'; sub new { my $proto = shift; my $self = bless {} ,

    携帯の公式のユーザIDを取得する - Unknown::Programming
  • 1