MySQLでDATETIMEとかTIMESTAMPの扱う時のまとめ

SQL

MySQLを扱う時に、DATE型とかDATETIME, TIMESTAMPなど似たようなデータ型が多いので、これらの違いや扱い方をまとめておきます。 DATE DATETIME TIMESTAMPの違いとは? 根本的に違うのはDATEで、「2020-02-11」のように日にちまでしか扱えないデータ型となっ…

MacでMySQLのパスワードを忘れた時の対処法

SQL

Macで久々にMySQLを触ろうとしたらパスワードを忘れていたので、パスワード変更の方法をメモしておきます。 環境 mysql Ver 8.0.16 for osx10.14 on x86_64 今回のMySQLは8.0.16のバージョンを使用。MySQLの使い方はversion5系から8系に変わる時に多少変わっ…

Dxlib(DXライブラリ)で画像を表示させる方法

dxlibで画像を表示させてみる。表示させる画像として、今回はミクさんを使う。 Dxlibで画像を表示させるのに使う関数 画像を表示させるのに使う関数は、以下の通り int LoadGraph( char *FileName ) FileNameに画像のファイル名を入れることで、指定した画像…

PHPで色々な所で使える便利な関数25選

PHP

「25 Essential PHP Functions - Wikiversity」と言う面白い記事を見つけたので、これを元にPHPで使える便利な関数を紹介していく。 ceil round floor これら3つの関数は、小数点を丸める働きがあるもの。 roundは小数点を四捨五入し、ceilは小数点を繰り上…

PHPフレームワーク「CodeIgniter」のLoaderClassを読み解く

最近、PHPのフレームワークを自作しており、参考にCodeIgniterのコードを読んでいる。 しかし、ただ読んでも完全に理解できないと思うので、ブログに備忘録として書き残していく。 今回は、様々なディレクトリのファイルを読み込む役割をしているLoaderクラ…

C++のstd::stackの使い方を解説する

c++

C言語でデータ構造の1つである「スタック」を表現するためには、ポインタとか配列とかで自分で実装する必要があった。 しかし、C++ではstd::stackを使うことで簡単にスタックを使う事ができる。 std::stackの使い方 std::stackを使うためには、自分で定義し…

微分のデルタΔxやdxの意味や関係性について

微分のデルタΔxとかdxとかの意味って何?と疑問に思ったので、これを機に勉強してみる。 Δxとはxとの差分、dxはxとの差分を極限まで0に近づけたもの Δxとは、xとの差分を表したもの。「どれだけxと差があるのか」までは表しておらず、微分では(x+Δx)のような…

ベクトルの内積の意味とか定義とか証明とかを解説していく

最近、線形代数(ベクトル)を学びなおしており、ようやく内積について理解ができたので、内積の意味とか定義、証明などを分かりやすく解説していく。 そもそも、内積とは何か? そもそも、内積とは何かというと、「あるベクトルの方向にどれだけのパワーが…

PHPのissetとis_null、emptyの違いや関係を調べてみる

PHP

PHPには変数の値などを調べる関数としてissetやis_null、emptyなどがあるが、これらがどのような挙動をしているか、どのような違いがあるか調べてみた。 また、これらの挙動の一覧をみたい場合は、「PHPのisset,empty,is_null - モトクロスとプログラムと粉…

PHPでob_startの使い方とか使い道とか

PHP

PHPで自作フレームワークを作る時にob_start関数が便利そうなので、周辺知識をまとめておく。 ob_startとは何か? ob_start関数とは、出力用のバッファリングを有効にするための関数。 普通echo "hello"などのように書くとターミナルやHTMLに文字が出力され…

C++におけるvirtual(仮想関数)の使い方を紹介していく

c++

今回は、C++を使う上で重要になるvirtual(仮想関数)について解説していきます。 virtualとは何か? virtualとは何かを理解するためには、virtualがいつ、どのような時に使われるかを理解した方が早いです。 例えば、以下のコードを見てください。以下のコ…

Win32APIでマウスのイベントをチェックしたり座標を取得したりする

Win32APIでマウスイベントの管理をしたい場合は、WindowProc(ウィンドウプロシージャ関数)内で行う。 LRESULT CALLBACK WindowProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam) { } 左クリックやダブルクリック等のマウスイベントが発生した時には…

Win32APIを使ってアプリケーションのウィンドウを作る方法

今回は、Win32APIを使ってアプリケーションのウィンドウを作る方法を、手順に沿って解説していく。 1,ウィンドウクラスを作成する Win32APIでウィンドウを作るためには、WNDCLASS構造体を使ってウィンドウクラスを作る必要がある。 ウィンドウクラスとは、今…

Win32APIのWinMain関数の引数はどんな意味なのか調べてみた

C言語とかC++でプログラミングをしていると、CUIではなくてGUIでアプリを作りたくなってきた。 そこでまずは、Win32APIの勉強として、WinMain関数の中身を調べていく事にした。 WinMain関数の引数の意味 WinMainの引数を見てみると、以下の様に書かれている…

segmentation fault 11(core dumped)の原因と2つのチェックポイント

C言語やC++を触っていると、segmentation fault 11(core dumped)というエラーが発生する時がある。 今回は、このsegmentation fault 11(core dumped)の原因や起こった時の対処法を2つ紹介していく。 segmentation fault 11(core dumped)の原因とは? segment…

RubyでGUIアプリ(デスクトップアプリ)を作るための環境構築

最近C/C++にハマっておりGUIアプリ(デスクトップアプリ)を作っているが、RubyでもGUIアプリを作りたくなってきた。 そこで今回は、RubyでGUIアプリ(デスクトップアプリ)を作るための環境を構築したので、その方法を解説していく。 RubyでGUIアプリを作る…

WindowsのMinGWでdxlib(DXライブラリ)を使う手順を紹介する

WindowsのMinGWでdxlib(DXライブラリ)が使えるようにしたので、その手順を紹介していきます。 また、今回の手順は公式ドキュメント「DXライブラリ置き場 使い方説明」を参考にしています。 開発環境 WIndows 10 (2019/ 05/ 15時点) MinGW Thread model: wi…

JavaScriptで配列の要素やハッシュ(連想配列)のバリューを変数に変換する方法

JavaScriptを使うときに、配列の要素の1つ1つをバラバラにして変数に渡したい、という場合がある。 let array = ["tarou", 19, "Japan"]; const name = array[0]; const age = array[1]; 上記のように書くのも良いが、配列の要素数が増えればその文だけコ…

JavaScriptでHTMLを表示・非表示の選択をしたい時の良い感じの書き方

JavaScriptでHTMLの表示・非表示を操作したい時には、今まで以下のように書いていた。 if(isDisplay) { let dom = `<div id="sample">hoge</div>`; } else { let dom = `<div id="sample" style="display:none;">hoge</div>`; } 上記は、isDisplayがtrueの時は表示して、falseの時は非表示にすると言うもの。上記のようにシンプル…

Nuxt.jsでnpm run devをした時に「SyntaxError: Invalid regular expression flags」というエラーが出た時の対処法

Nuxt.jsでローカルサーバーを立ち上げるためにnpm run devをした時に、「SyntaxError: Invalid regular expression flags」というエラーが出たので、この対処法を紹介していく。 開発環境 Nuxt 2.4.0 Node 8.9.4 Mac NodeのバージョンはNodeBrewで管理 具体…

jQueryの代替ライブラリとして「min.js」がオススメなので紹介する

jQuery不要論が出て久しいですが、趣味でWEBサイトを作っていると、Vue.jsを使うまでもないけど素のJavaScriptで書きたくない、かといってjQueryを使いたくない、という場合があります。 ボク自身もこのような状況にモヤモヤしていましたが、色々漁っている…

素のJavaScriptでappend,prepend,after,beforeが実装されていたので紹介する

すでに「jQueryはオワコン」と言われて久しく、僕自身もjQueryを使わずに素のJavaScriptでゴリゴリ書いていますが、たまにappendとかprependなどのjQueryのメソッドが使いたい時があります。 色々調べてみると、JavaScriptの方でappendとかprependを実装でき…

Mojoliciousで文字化けが起こった時の対処法2つ

PerlのMVSフレームワーク「Mojolicious」を使っていて、$c->renderでHTMLを表示した時に日本語が文字化けしたので、その対処法を2つ紹介していきます。 そもそもPerlで文字化けが起こる原因とは? そもそも、Perlで文字化けが起こる原因とは何でしょうか? …

PerlのDBIで新規レコードを作成(INSERT)した時にレコードのIDを取得する方法

PerlのDBIでINSERT処理をした時に、新たに作成したレコードのIDを取得したい時がある。 INSERTしたレコードのIDを取得する方法 もし、あなたがDBI::mysqlのモジュールを使っている場合は、以下のように$sth->{mysql_insertid}を使えば新規レコードのIDを取得…

Mojoliciousで「[error] Role::Tiny 2.000001+ is required for roles」のエラーが出た時の対処法

PerlのMVCフレームワーク「mojolicious」を触っている時に、以下のエラーが発生した。 [error] Role::Tiny 2.000001+ is required for roles 上記のエラーは、with_rolesメソッドを使おうとする時に発生したものだが、解決策はRole::Tinyというモジュールを…

perlで正規表現で文字列を置換したり、新しい変数に格納する方法

Perlを使っている時に、正規表現にマッチした文字列を新しい文字列に直したり(置換)、その置換した文字列を新しい変数に格納したい時がある。 Perlで正規表現にマッチした所を置換する方法 Perlで正規表現にマッチした所を置換するためには、以下のようにす…

perl(Mojolicious)をレンタルサーバーXserverを使って公開する手順まとめ

perlのMVCフレームワーク「Mojolicious」をレンタルサーバーのXserverを使って公開する方法を紹介していきます。 基本的には、WEBアプリはVPSやAWSのサーバーを借りて運用すべきですが、個人の遊びとして格安のレンタルサーバーを使いたい場合があります。 …

perlで「Can't locate Sample/Module.pm in @INC」と言うエラーが起こる原因と対処法3つ

perlを扱っていると、よく以下のようなエラーが出ることがあります。 Can't locate Sample/Module.pm in @INC 今回は、このエラーの原因と「これをやったら解決するよ」と言う対策法を紹介していきます。 Can't locate Sample/Module.pm in @INCの原因とは?…

perlでファイルの中身を全て読み込みたい時の方法

perlを使っている時に、ファイルの全ての内容を変数に格納したい時がある。例えば、こんな感じで。 my $data = read_file; 今回は、そんな方法を紹介していくよ。 ファイルの全ての内容を変数に格納する方法 結論から言うと、以下のように書けばファイルの中…

perlでファイルの読み込みとか作成とか削除のまとめ

perlでファイル操作をする方法をまとめていきます。 なるべく分かりやすさ重視で説明するので、厳密には違うと言う部分が多々あるかと思いますが、詳細は公式ドキュメントをみてください。 perlでファイルを読み込む方法 perlでファイルを読み込むためには、…