PG WORKS

PHPやLinuxサーバなどのノウハウや、便利なツールを紹介していきます。

【PHP】CSVファイルの操作サンプル集

CSVファイルのプログラムを作るとき毎回忘れるためメモ。
※随時更新していきます。

CSVファイルの読み込み

<?php
$savePath = "保存する場所";
$filename = "ファイル名";
$file = new SplFileObject($savePath.$filename); 
$file->setFlags(SplFileObject::READ_CSV); 
foreach ( $file as $line ) {
	$records[] = $line;
}
?>

LaravelでSplFileObjectを使う場合

<?php
$savePath = "保存する場所";
$filename = "ファイル名";
$file = new \SplFileObject($savePath.$filename); 
$file->setFlags(\SplFileObject::READ_CSV); 
foreach ( $file as $line ) {
	$records[] = $line;
}
?>

「new \SplFileObject」「\SplFileObject::READ_CSV」に変更する。

【Windows10】HDMI接続で外部モニターが映らないときの対処方法

今回のWindows10のアップデートで外部モニターが表示されない現象に陥りました。

モバイル用ノートパソコンの「Intel HD Graphics」ドライバーを最新にすることで解決

www.intel.co.jp

上記の方法で表示されない場合、「Intel HD Graphics」のデバイスを無効/有効に切り替えると表示されるとの報告も有りました。

バイスマネージャーでの手順

  1. Windowsキー」を押して「デバイスマネージャー」と入力
  2. 「デバイスマネージャー」をクリック
  3. 「デバイスマネージャー」の「ディスプレイアダプター」の「Intel HD Graphics」を右クリック
  4. 「デバイスを無効にする」をクリック
  5. 再度「Intel HD Graphics」を右クリック
  6. 「デバイスを有効にする」をクリック

これでも表示されない場合は、システムの復元をしているもの手段ですが、その前に、モニターの電源ケーブルHDMIケーブルが抜けているまたは断線していないかの確認を最初にしましょう。

【PHP】気軽に使える正規表現チェッカー

正規表現を使うとき何度かサンプルを作りテストすると思いますが、プログラムを何度か修正するのが手間なので
Webで公開されている正規表現チェッカーをよく使います。

php-regexp.a-zumi.net

PHPの記述そのまま使えるので便利なツールです。

正規表現ではないですが、こちらもオススメなツールです。

codic.jp

変数の名前に困ったときに、日本語を入力すると英語で記載された名前になるためオススメです。

【ヒストリー】プログラムができないのにプログラマーになった人生

私自身、まともにプログラムを組むことができなかった時期が長かったので、できなかったときの思い出と、出来るようになったきっかけをブログに書き留めたいと思います。

専門学校でプログラムを学び、プログラムの世界に飛び込んでいったのですが、何を学んでも理解ができなくて、嫌になった時期がありました。

先輩に頼るしかなかった時期

先輩に「どこがわからないの?」と聞かれるのですが、何をどう説明したらいいのか、わからない。。。わからなさすぎて「いや・・・・すいません。」の言葉しかでませんでした。

このときの技量は、サンプルを少し改良する程度のことはできるものの、サンプルを応用したり、自分でアルゴリズムを考えて作ることができませんでした。

期限に間に合わせるために必死になる

納期に間に合わせるために、先輩に迷惑かけながらもやっていくのですが、できない自分に対してのストレスを感じてました。

なんのためにこの仕事をやろうと思ったのかな・・・もっとまじめに勉強してしていれば・・・などマイナス思考なことしか思い浮かばず、どん底まで落ち込みました。

なんでだろう・・・なんでできないの・・・

あるとき、その時勤めていた会社の社長から、きつい一言を言われました。(今だとパワハラ



「君ね。問題外だから、このままだと辞めてもらうことになるよ」



もうね。「ハハ・・・」って感じでしたよ・・・

ダメかなと思ったときに・・・

f:id:zen6a:20150826235217j:plain

あるゲームを作ることになったときに、どうしてもうまく組めなくて悩んでました。

いつも帰り道に、一から仕組みを見直し、どうやったらうまく動かせるのか、頭の中で想像していたその時。

たくさんの花が一斉に咲くように、悩みが解消していく考えができるようになりました。
(ランチの帰りに、ひらめいた記憶がいまだに覚えてる。。。)

徐々にプログラムが理解できるようになった

それ以降は、他のプログラムでも組めるようになり、今の自分があるわけですが、あのひらめきがなければ、プログラマーという道は諦めてたかと思います。

苦しもがきながらも、続けきったからこそ、ひらめいた出来事だったのかもしれません。

【PHP】JpCarbonで祝日判定

前にCarbonを使った日付処理を公開しました。

zen6a.hateblo.jp

仕事で祝日を判定する処理が必要なり調べたところ、Composerで「JpCarbon」という祝日を判定できる記事を見つけました。

enomotodev.hatenablog.com

祝日を判定し祝日であれば、何の祝日なのか表示する

require 'home/○○○/bin/vendor/autoload.php';

use Carbon\Carbon;
use JpCarbon\JpCarbon;

$dt = new Carbon('2018-12-23');
$st = JpCarbon::createFromDate($dt->year, $dt->month, $dt->day)->holiday;

echo $st;

祝日でなければ結果は何も表示されません。