phpではPSR-12というコーディング規約があります。作成したphpプログラムがPSR-12の規約に合致しているかをチェックしたい場合、`phpcs`コマンドを使うと便利です。 この記事では、composerでグローバルインストールすることで、コマンドラインからphpc...


MySQLユーザのためのMongoDB入門

2018年5月31日 | カテゴリ: MongoDB
## Mongo DBのデータ階層 ```language-bash Database -> collection -> document ``` MySQLだと、下記の構成になる ```language-bash Database(schema) -> table -> row ``` ## 接続 - localhostにユーザ認証せずに接続 ```language-bash ...


お名前.comのドメイン管理では、ドメインの有効期限が切れる15日前になると、自動更新を行える設定があります。通常はドメインの失効を防ぐために有効にした方が良いのですが、ドメインを廃止したいなどの理由でOffにしたい場合があります。 今回は、自...


macで`brew install git`コマンドでgitをインストースした場合、.bash_profileに下記の設定を書いておくと、コマンドの自動補完やプロンプトに作業中リポジトリのステータスが表示されるので便利です。 ## 作業手順 エディタで.bash_profileを開きま...


久しぶりにTOEIC対策の本を読みました。 [40歳オーバーでニート状態だったぼくが初めてTOEIC L&Rテストを受けていきなり930点取って人生を劇的に変えた、効果絶大な英語勉強法](https://amzn.to/2GTwEgk) ## 本書の攻略メソッド この本は、全...


macOSにmecab-ipadic-NEologdをインストールしたので、インストール時の手順を書いておきます。 デフォルト設定だと、インストールした辞書は/usr/local/lib/mecab/dic/mecab-ipadic-neologd/以下に作成されます。 ## 実行した環境 今回のインス...


macOSでコマンドライン(cli)から、OSのバージョンを確認したい場合、`sw_vers`コマンドを使用します。 ```language-bash $ sw_vers ProductName: Mac OS X ProductVersion: 10.13.4 BuildVersion: 17E202 ``` 結果をシェルスクリプトなどで使い...


sedでファイルの最後の行だけを置換する

2018年5月26日 | カテゴリ: Linux, Mac | タグ:
sedでは`sed -e "s/before/after/g"`のように記載すると全ての行に対して文字列の置換を行うことがあります。 ですが、時にはファイルの最終行のみ置換したいなど処理範囲を指定したい場合があります。 このような場合はsedのアドレス指定の機能を使...


PHPでフォームに入力されたテキストを1行づつ処理させたい場合は、`str_replace()`と`explode()`関数を組み合わせると便利です ## サンプルプログラム 下記のプログラムは、GETパラメータで渡されたテキストを改行文字で区切って、1行づつ処理する...


MySQLではmysqlコマンドでDBに接続する時に、接続先DBの情報をコマンドラインのパラメータで指定することが多いです。 ですが、この他に`my.cnf`ファイルに接続情報を書いておき、記載のDBに接続する方法があります。 今回は、my.cnfファイルを作成...


JetBrainsのサイトや商品購入時の決済明細をみると、JetBrainsは正式な会社名が`JetBrains s.r.o`となっています。 末尾につくs.r.oですが、チェコ語の"spoločnosť s ručením obmedzeným"の略で、`有限会社`という意味です。これは、JetBrains社は本社...


先日JetBrainsの製品をPayPal決済で購入したのですが、決済のオプションを変更するだけで少しだけ安く購入できることに気づきました。 PayPalではデフォルトで決済時のドル->円の換算レートがPayPalが決めたレートになっています。ですが、このレートは...


「住所(address)」と「所在地(location)」の違いは以下の通りです。 ``` 住所: 人が住んでいる場所を示すもの 所在地: 建物や法人(会社など)の場所を示すもの ``` ですので、会社の場合は本来"会社の所在地"というのが正しいのですが、実際の日常...


Vagrantではvagrant-sshfsとういプラグインを使用することで、ホストOSとゲストOSのファイル同期にsshfsを使用することができます。 ## インストール vagrant-sshfsのインストールは、`vagrant plugin install`コマンドを使用します ```language-ba...


pythonで一定時間プログラムをスリープさせたい場合は、time.sleep()を使用します。 ## プログラム ```language-python import time print('start') time.sleep(1) print('1sec') time.sleep(0.5) print('1.5sec') ``` ## 実行結果 プ...


pythonで文字を改行せずに出力するには、sys.stdoit.write()メソッドを使用します。 write()で出力した文字は、出力バッファリングされます。直ぐに出力したい場合はflush()を使用します。 ## サンプルコード 下記のサンプルは、1秒に一回`.`を...


mac版のVisual Studio Codeを使っていてエディタ上にcliのターミナルを使いたい場合、メニューの"表示 -> 統合ターミナル"から開くことができます。 (ショートカットキーは、`ctrl + shift + @`です) 統合ターミナルを選択すると、以下のように...


 pythonでは他の言語で連想配列/ハッシュに相当するデータ構造として、辞書(Dictionary)型というものがあります。 pythonの辞書データを値の順や、キーの順でソートするサンプルコードを紹介します。 ## サンプルコード 変数`data`に入ったデー...


pythonでは、他の言語と異なり、グローバル変数と関数でネームスペースが分離していません。 このため、以下のように変数と関数を定義してしまうと、変数の中身が関数オブジェクトで上書きされてしまいます。 ```language-python # 変数aaを用意 a...


python3を使った数値計算に関する演算子です加減乗除は他の言語と同じなので、pythonならではのモノのみ記載します。 ```language-python # 割り算 # python3の時は、浮動小数で計算される(python2は端数が切られる) print(3 / 2) # -> 1.5 ...


[python]変数のデータ型を確認する

2018年5月11日 | カテゴリ: python
pythonではtype()を使用することで変数のデータ型を確認できます。 ## プログラム ```language-python val = 1 print("- 1 -") print(type(val)) val = 'a' print("- 2 -") print(type(val)) val = [1, 2, 3] print("- 3 -") print(type(...


macOSでpyenvを使う[2018年, macOS High Sierra]

2018年5月10日 | カテゴリ: python | タグ: ,
pythonではpyenvを使うことで、python2系とpython3系を共存させることができます。 今回は、このpyenvをmacOSにインストールして、別バージョンのpythonをインストールしてみました。 ## 実行環境 macOS High Sierra10.13.4 brewで、gitコマン...


pythonを使って、指定されたファイルの内容全部を取得した上で、ファイル内に含まれる改行を取り除き、1行に連結するプログラムです。 ## プログラム ```language-python # test01.py text = open("input.txt").read().replace('\n', ' ') print...


Visual Studio Codeで開いているファイルに埋め込まれた制御文字(STX,ETXなど)を表示させるには、ユーザー設定に下記の項目を追加すれば良いです。 ```language-yaml "editor.renderControlCharacters": true, ``` ユーザ設定はMacの場合`cmd+,`...


PHPStormでは、IdeaVimプラグインを使うことでエディタをviキーバインドにすることができます。 プラグインをインストールしていたのに、いつのまにかviキーバインドが使えなくなっている場合、プラグインが無効化されている場合があります。 ## 対...


pythonのscikit-learnをインストールするのに必要だったダウンロードファイルのサイズをメモしておきます。 合計55Mbyteぐらいで、モバイル回線経由でも問題なくダウンロードできる程度でした。 ## 実行したコマンド ```language-bash pip install n...


AmazonLinuxで、Python3から形態素解析ライブラリのMeCabを使用できるようセットアップしたVagrantの設定ファイルを作成しました。 下記の内容をVagrantfileの名前で保存し、vagrantが入った環境で`vagrant up`するだけで環境が構築できます。 [関連...


vagrantでは初回vagrant up時にプロビジョニング処理を走らせることができます。 この際に方法をshellにしていると、プロビジョニングを実行するユーザが`root`になります。 ここで、プロビジョニングの実行をvagrantユーザで行いたい場合は、下記の...


MeCabで形態素解析を行わず、分かち書きだけ行いたい場合は、`-Owakati`オプションを使用すれば良いです。 まずは下記の内容でファイルinput.txtを用意しておきます ```language-bash すもももももももものうち ``` その後、以下のように`-Owakat...


Linuxで作成したpythonスクリプトを実行可能な形式にするには、以下の2つを行えば良いです。 - ファイルの先頭に"#!"を追加 - ファイルに実行権限を与える ## ファイルの先頭に"#!"を追加 まずは、pythonのスクリプトの先頭に`#!/usr/bin/env pyth...


pythonでMeCabを使おうとしたところ、いろいとエラーがでてハマったので、発生したエラーと対処した方法を書いておきます。 ## 作ったプログラム 今回動作させようとしたプログラムは下記で、与えられた文章の形態素解析を行うものです。 ```language...


pythonではpyenvというツールを使うことで、1台のPCに複数バージョンのpython環境を共存させることができます。 pyenvは非常に便利なツールなのですが、仕組みがわかっていないと思った通りにバージョン切り替えを行えなかったりトラブルを生んでしまう...


AmazonLinuxにMeCabをインストールすることがあったので、その時の手順をVagrantfileにしたものを公開しておきます。 Vagrantを使わずに、手作業でセットアップしたい場合は`config.vm.provision`に書いてあるコマンドを手で実行すれば良いです。 ...