楽しいだけで十分です

好きなことを書きます

2017年4月12日

やったこと パーフェクトPHP 8.1(2週目) ドットインストールのLaravelレッスン 25 ~ 最後 1 ~ 5(2週目) 雑記 昨日言ってた通り、パーフェクトPHPの2週目を始めた。 フレームワークとアプリの実装を行き来して、理解を深めつつ、スピード持ってこなしたい。 L…

2017年4月11日

やったこと パーフェクトPHP 8.6 ~ 8の最後まで ドットインストールのLaravelレッスン 22 ~ 24 雑記 パーフェクトPHPは8章が一応終わった。 ただ、8章が途中から動いてなかった(!) ので、もう一度やってちゃんと動くアプリにしよう。 とりあえず、サンプルの…

2017年4月10日

やったこと パーフェクトPHP 8.4.2 ~ 8.5 ドットインストールのLaravelレッスン 18 ~ 21 雑記 パーフェクトPHPは、ざーっと写経した。 8章終わったら、もう一度7章 ~ 8章をやり直すと、定着が良さそうな気がしているので、やろう。 Laravelは先週からちょこ…

2017年4月9日

やったこと パーフェクトPHP | Gihyo Digital Publishing … 技術評論社の電子書籍 8章始め ~ 8.4.1 JUnit実践入門 ── 体系的に学ぶユニットテストの技法 | Gihyo Digital Publishing … 技術評論社の電子書籍 4章 PHPUnitのインストール (Composer) 所感 今日…

2017年4月8日

筆不精なので、ゆるくその日の出来事でも書くということを目標にしたので、書く。 うーん、なんかブログを書くことに、モチベーションが起きるような何かがあればいいのだろうなー。 やったこと JUnit実践入門 ── 体系的に学ぶユニットテストの技法 | Gihyo …

HTTPステータスコード 302, 303, 307を整理する

会社で同期と話してる時に、「HTTPステータスコードの302, 303, 307って使い分けがよくわからないよねー」ってなったのですが、たまたまパーフェクトPHPで出てきたので、まとめておきます。 それぞれの定義 302: Found 303: See Other 307: Temporary Redire…

パーフェクトPHPの「6章 Webアプリケーション入門」をPDOで書き直した

PHP7.0.14でパーフェクトPHPを写経しているのですが、mysql関数が廃止されているため、そのまま写経しても動かない (!) という状態になってしまいました。 なので、自分でPDOで書き直してみました。 同じようなことしてる人がいたら、参考までにどうぞ:) (自…

ターミナルで、shell-init: error retrieving current directory: getcwd: cannot access parent directories: というエラーが出た場合の対処

コマンドが実行できない!となって焦ったエラーですが、原因は大したことないものでした。 原因 カレントディレクトリが存在しないため、発生しているエラーです。 解決方法 存在していることがわかっている、別のディレクトリに移動すれば解決します。 参考…

Carbonで、日付をゼロサプレスする

PHPでCarbonを使って、日付を制御しようと思ったのですが、ゼロサプレスの方法が分からなかったのでメモ。 そもそもCarbonって? PHPの日付操作のライブラリです。 Laravelなどのフレームワークにも取り込まれています。 carbon.nesbot.com 使い方はこの辺が…

社内で勉強会を開きました - その後

以前に書いた通り、先週から勉強会を開いています。 yinm.hatenadiary.jp 今日は第2回目ということで、前回の反省点を踏まえて、改善してみました。 実際に行ったことをメモしておきます。 まとめノートを作る 前回は、1項を読むごとにホワイトボードにまと…

MacのHomebrewのアップデートを、cronで自動化する

Macでcronを使って、Homebrewのアップデートを自動化してみました。 作業したことをメモしておきます。 なお、このエントリでは、それぞれの見出しごとに関連しそうな参照リンクを書く形式にしています。 cronの設定前にすること 事前に設定が必要なことがい…

JavaScriptのArray.lengthプロパティは、インデックスの最大値 + 1を表す

タイトルの通りなのですが、びっくりしました。 配列の要素数を返してくれるプロパティだと思ってたら、違いました。 配列のインデックスが飛び飛びになることはほとんどない(Array.shift()などでも振り直される)ので、気にしないといけない機会はあまりない…

社内で勉強会を開きました

会社の昼休みを使って、Webを支える技術 の勉強会を開いてみました。 以前から勉強会を開催したいと思いつつ、どうやって進行するのがいいのかや、そもそもテーマを何にすればいいのか、人は集まるのかなど不安があってやれてなかったのです。 でも、普段の…

PHPUnitを、Composerでインストールする時のメモ

PHPUnitをComposerでインストールする時に少しハマったのでメモ。 実行環境は次のものです。 CentOS Linux release 7.2.1511 PHP 7.0.15 やったこと composer.jsonに記述した後に、composer installを実行すると、「PHP extension domがないよ」と言われまし…

SPL (Standard PHP Library)って?

「SPL」という単語をちょいちょい見かけるのですが、何か分からなかったので、調べてみました。 SPLとは PHP用の標準的なクラスライブラリです。 クラス ライブラリというのがポイントで、一部の関数やインターフェイスを除いて、ほとんどがクラスとして定義…

PHPの変数展開は、{$variable}構文を使うのがいいみたいです

同僚さんから、「PHPの変数展開は、{$variable}構文で書くのがいいよ」と教えてもらったので、メモ。 ちなみに、ちゃんとはまだ分かってません・・・難しい。 PHPの変数展開は3種類ある 単純な構文 複雑な構文 ({$variable} タイプ) 複雑な構文 ({$expr} タ…

おやすみ

体調が悪いので、今日はおやすみ。 習慣付けるには、何でもない日でも行動しておくのが大事と何かで見た気がするので、とりあえず投稿だけしておきます。

SSHクライアントの設定の読み込み順をまとめる

SSHクライアント(sshやscpなど)の設定の読み込み順をまとめます。 [前提知識] クライアントの設定方法 クライアントの設定方法には、次の3種類があります。 コマンドラインのオプションを指定 ユーザーコンフィグファイル(~/.ssh/config)に記述 ホストコンフ…

SSHクライアントのコンフィグファイルをまとめる

SSHクライアントのコンフィグファイルをまとめてみました。 ディレクトリ単位の分類 コンフィグファイルを含むディレクトリとしては、以下の2つに分類されます。 パス 役割 ~/.ssh ユーザー個別の設定ファイルを置くディレクトリ /etc/ssh 全ユーザーに影響…

OpenSSHでログインできるまでの流れ

SSHをなんとなくで使っていて、サーバーと接続できないとなった時に、どこから調べたらいいんだろうな?ってことがままあったので、お勉強を始めてみました。 ひとまずSSHでログインできるところまでの流れをまとめます。 なお、OpenSSHのプロトコルバージョ…

PHPの言語構造とは

パーフェクトPHPを写経しながら読んでるのですが、「echo文は言語構造である」の意味がよく分からなかったので調べてみました。 言語構造とは 言語構造(Language Constructs)とは、言語を構成する要素です。 例えば、ifやwhileなども言語構造に該当します…

PHPのforeachは、イテレーション対象の配列をコピーして動作している

PHPのforeachでイテレーションを回してる時に、イテレーション対象の配列の値を更新したかった時に調べてみました。 まだ、ちゃんとは理解できていないですが、PHPのforeachは、イテレーション対象の配列をコピーして動作しているようです。 そのため、forea…

tmuxを使った複数サーバーの同時操作

仕事で複数サーバーで同じ操作をしたくなったのですが、「tmuxのsynchronize-panesを使えばいい」と先輩に教えてもらいました。 synchronize-panesとは 複数ペインを同時に操作できる機能です。 同時操作をしたいサーバーをそれぞれのペインで接続した後に、…

第110回 PHP勉強会@東京 に参加しました。

phpstudy.doorkeeper.jp 2日続けて勉強会。 2日続けて同じ会場。 会場から2階上がオフィス。 そして明日から2月。

渋谷ECミートアップ vol.3〜デザイナーが語るサービス設計・メディアの裏側〜 に参加しました

pepabo.connpass.com 自分のチームのメンバーがお話するとのことで、ふらっと参加してきました。 デザイナーさん向けの勉強会に参加するのが初めてだったのですが、スライドの作り方がデザイナーさんだ!って感じで綺麗でした。 自分が作る時に参考にします。…

Apacheの組み込みモジュールの確認方法

Apacheの組み込みモジュールに何が入ってるんだっけ?となった時に使えるコマンドをメモ。 組込済みモジュールを一覧表示する httpd -Mを実行すると、組み込まれているモジュールを一覧表示できます。 例) 組み込みモジュールを一覧表示 $ httpd -M Loaded M…

OSS Gateに参加してきた

OSS開発未経験者が、OSS開発の一歩目を踏み出してみようというワークショップに参加してきました。 イベント内容はこちら。OSS Gate | Doorkeeper 興味があるものをやってみたらいいとのことだったので、Composerを選択してみました。 作ったissueがこちら …

PHPのエラーをまとめる

PHPのエラーについて勉強したので、まとめます。 概要 PHPのエラーには、大きく分けて3種類あります。 パースエラー (PHPの文法間違いによるエラー) 実行時のエラー (PHPの実行中に処理が継続できなくなるエラー) 警告・注意 (実行は継続できるが、注意を促…

PHPのソースコードが実行されるまでの流れ

PHPのソースコードが、実行されるまでを勉強したのでメモ。 実際にコードを書く時に意識することはないですが、エラーのデバッグ時に役立つので、知っておいた方が良さそうです。 概略 PHPプログラムが実行される度に、内部的にソースコードのコンパイルを行…

Webサーバー(Apache)のパーミッション

CentOS7を使って、Apacheの勉強をしていたのですが、パーミッションエラーなどでよくエラーになったので、整理してみました。 前半が、前提知識としてLinuxのパーミッション設定の話、後半がApacheのパーミッション設定の話になってます。 Linuxのパーミッシ…