dorapon2000’s diary

忘備録的な。セキュリティとかネットワークすきです。

Perl

Perlの1秒差のdelta_daysの理解

PerlでDateTimeの日付差分を求めるとき、delta_daysメソッドを使います。しかし、このdelta_daysメソッドが日付部分だけを見て1日と出しているのか、秒数もみて24時間の差があるときに1日と出すのかググっても調べてる記事がありませんでした。自分が記録に…

Perlのfalsyな値の==とeqによる比較結果

Perlのfalsyな値を比較した時、True/Falseのどちらになるか整理します。検証するfalsyな値は以下の4つです。 空文字"" 数字の0 文字列の"0" undef 検証コードはGitHubにあげています。 github.com 検証環境 Perl v5.34.0 ==で比較 ==は数字が等しいかの判定…

Perlの文字化けとutf8とEncodeの関係

ブログの記事のサンプルコードを書いているときにPerlで文字化けに悩まされました。文字化けはせずとも、Wide character in say atという警告が表示されたりすると、記事のサンプルコードとしては締りが悪いです。もうPerlで日本語まったくわからん... そこ…

PythonとPerlとjsの日付操作のサンプルコード

PythonとPerlとJavaScriptの3つの言語で以下の日付操作をまとめます。自分用の忘備録です。 現在時刻/今日の時刻オブジェクトの取得 文字列 → 時刻オブジェクト 時刻オブジェクト → 文字列 曜日を日本語で取得 足し算と引き算 時刻オブジェクト同士の比較 (…

Perlのautovivificationをいろいろ実験

Modern Perlを読んでいたら、autovivificationという機能があるということを今更ながら知った。たいへん便利だ。。。癖が強いらしいので手を動かして挙動を確かめてみる。 autovivificationとは my %users; $users{Brad}{id} = 228; $users{Jack}{id} = 229;…

VSCodeのPerl開発環境

Perl5でデバッグ・Lint・自動整形ができるVSCode環境を整えたので忘備録。 環境 macOS Catalina 10.15.3 fish 3.0.2 perl 5.30.1 VSCode 1.42.1 (前準備)Perlのインストール VSCodeと関係ないが、バージョン管理ができるplenvでperlをインストールした。 #…