注目キーワード
  1. npm
  2. composer
  3. css
  • 2021年1月20日

[JavaScript] ドキュメントの読み込み後に処理を実行するコード

概要

本来は下記のようなコードで、ドキュメントの読み込み後に処理を実行してほしいのですが、諸事情でうまく呼び出されないことがあります。

window.addEventListener("load", eventAfterLoad);

なので、実際には下記のようなコードを使います。

if (document.readyState !== 'loading') {
	eventAfterLoad();
} else {
	doc

  • 2020年10月7日

[PHP] staticフィールドは安易に使わないほうが良い説

PHPのstaticフィールドには、私の目には奇妙としか思えない挙動があるようです。見事に嵌ったので、反省と自戒を兼ねて書きます。

概要

親クラス側でstaticフィールドを用意した場合、直近に利用した子クラスの影響を、親クラスと兄弟クラスの全てが受けます。

つまり、子クラスごとにフィールドが用意されるのではなく、親クラス側で用意されているようです。

具体的なサンプルコードを見てみましょう。

サンプルコード

<?php

  • 2020年10月7日

[PHP] phpでglob recursive

概要

phpのglob関数にはrecursiveがない為、需要を満たせないことがあると思います。再帰を使った実装例もネット上には多々ありますが、車輪の再発明は避けたいので、composerを使います。

インストール

$ composer require gielfeldt/iterators

サンプルコード

<?php

include __DIR__ . './vendor/autoload.php';

use Gi

  • 2020年10月7日

npmでメジャーバージョンの更新

npmで、パッケージのメジャーバージョンを更新するメモです。

本体だけではメジャーバージョンの更新は出来ないようなので、npm-check-updatesを使います。

インストール

$ npm install -g npm-check-updates

更新の実行

$ ncu -u

これでpackage.jsonも自動更新されます。

注意事項

注意事項として、メジャーバージョンの更新は下位互換性を保証しませんので、くれぐれもテストなど…

  • 2020年9月5日

[Linux] btrfs・xfsでdedup

Linuxで重複排除

個人的なバックアップストレージですが、容量が厳しくなってきたのでbtrfsとxfsで重複排除を行いました。

手順は、btrfsは初期化した後、duperemoveを実行するだけ。
xfsは初期化時にオプションが必要のようで、例えば以下のように初期化します(初期化するとデバイス内のファイルは全て消えます。ご注意ください)。

$ mkfs.xfs -L dedup -m reflink=1 /dev/sd0

  • 2020年5月16日

[PHP] phpunitでのテスト中かどうかを判定する

PHPUnitでのテスト中に限り、キャッシュを有効にしたり、Mockを使ったりしたいケースは多いと思います。
その場合、phpunit.xmlに下記のような記述を加えます。

<phpunit>
	<php>
		<env name="PHPUNIT" value="true"/>
	<php>
</phpunit>

あとはif文で判定します。

<?php

u