Furudateのブログ

プログラミングやネットワーク系の知識・技術がメインのブログ。技術メモ帳的な感じになるかと。岩手から発信していきます。

【PHP】CakePHPで特定のバリデーションルールを解除

PHP

こんにちは。 CakePHPではモデルの$validateにバリデーションルールを指定しています。 ここで指定するとsaveのときや $this->Model->validates() で自動でバリデーションをしてくれてとても便利です。 しかし、場合によってはバリデーションルールの一部を…

【PHP】CakePHP2でcurlを使ってREST APIを叩く処理

PHP

こんにちは。 最近、自作したAPIをCakePHPを使って叩こうとしたのですが、何を使えばいいか迷いました。 PHPを使って外部のリソースを取得したりAPIを叩くとき、file_get_contentを使う方法があります。 しかし、パフォーマンス的にはcURLを使ったほうが良い…

【Excel】文字列処理の便利な関数まとめ

こんにちは。 今回はExcelについてです。 Excelで改行削除とかスペース削除とかの文字列処理をしたいときに使える関数をまとめておきます。 今回は完全に自分の備忘録です。 関数名 説明 CLEAN関数 改行コードを削除(厳密には印刷されない制御文字を削除) …

【PHP】CakePHP2.x系での別モデルの使用方法まとめ

PHP

こんにちは。 久々にCakePHPについての更新です。 今回は小ネタ的な感じですが、あるコントローラーから別のモデルを使いたいとき、あるいはあるモデルから別のモデルを使いたいときの方法をまとめておきます。 以下では、hogeコントローラー、hogeモデルに…

nvmをHomebrewでインストールしてみました

こんばんは。 今までnode.jsをHomebrewでインストールしていたんですが、今更ながらnvmで管理することにしました。 nvmはnodeのバージョン管理ツールです。 nvmはHomebrewで入れたのでインストールから設定と使い方までメモしておきます。 nvmのインストール…

MacにTermExtractをインストールして使ってみる

こんにちは。 最近自然言語処理のツールを色々といじっています。 今回は専門用語自動抽出ツールであるTermExtractというものをインストールして使ってみたいと思います。 ツールのページはこちら。 Web版もありますが今回は自分のシステムに組み込みたいこ…

Wikipedia上位下位関係抽出ツールを使ってみた

おはようございます。 最近研究関連で言語処理の分野を見ています。 今回はWikipediaのダンプデータを使って用語の上位下位関係(is-a関係)を抽出するツールがあったので、それを使ってみました。 ツールはこちら。 なお、後述しますが抽出にはかなり時間が…

Mecab-perlのインストール

こんばんは。 Mecabについて、これまでPHPのバインディングやRubyのバインディングをインストールしてきました。 次はperlのバインディングをインストールしたいと思います。 やり方はRubyのときとほぼ一緒だと思いますが・・・ # mecabのバージョンに合わせ…

BerkeleyDBとperlのDB_Fileモジュールのインストール

こんばんは。 今回はperlのDB_Fileモジュールというものを使いたかったのでそれのインストール方法をメモしておきます。 このモジュールをインストールするためにはBerkeleyDBというDBMSの一つをインストールする必要があります。 DB_FileはBerleleyDBの一部…

Cabochaをインストールしてrubyで使えるように

こんばんは。 今回はCabochaをMacに入れてみたいと思います。 Cabochaは係り受け解析器です。 今回はすごく簡単でした。 なお、mecabがインストールされていないと動かないので注意です。 インストール まずはインストールです。 こちらからダウンロードして…

vimのよく使うコマンドや便利なコマンドなど

こんばんは。 今回はvimについて、よく使うコマンド、便利なコマンドなどを細かい部分を含めてメモしておきたいと思います(よく忘れるので…)。 基本的なコマンド まずは基本的な部分です。 :(コロン)を使わない基本的なコマンドをここに記載します。 カー…

git submodule の使い方

Git

こんにちは。 今回は個人的に最初ちょっと扱いづらかった git submodule について基本的な使い方をメモしておきたいと思います。 git submoduleは外部のgitリポジトリを自分のリポジトリのサブディレクトリとして扱うことができるようになるものです。 clone…

mecab-rubyのインストール方法

こんにちは。 今回はMecabをRubyで使えるようにするために、OS Xにmecab−rubyをインストールします。 mecab−rubyはソースをダウンロードしてきてインストールします。 ただ、gemでもインストールすることができるのでビルドしたくない方はそちらで。 しかし…

rbenvでコンパイラ関連のエラーが出たときの処理

rbenvで「C compiler cannot create executables」っていうエラー文が出たときの対処法。 ちょっと詰まったのでメモしておきます。 Homebrewで apple-gcc42をインストール Rubyをインストールする際にgccのバージョンを指定する $ brew install apple-gcc42 …

Google日本語入力の設定

こんにちは。 突然ですが自分はMacのIMEにはGoogle日本語入力を使っています。 Windowsのときからずっと使っているのですが便利ですよねこれ。 しかし、すこし不便に思うところもありました。 Macの場合は command + space で入力モードを切り替えますが、使…

Gist.vimのインストールと使い方

おはようございます。 ブログに書くソースコードをGistにアップロードしようと思って、何か良いのないかなーと思ってたらgist.vimというvimのプラグインがあったのでそれのインストールと使い方をメモっておきます。(結構今更感ありますが・・・) といって…

mecabにWikipediaのタイトル一覧とはてなキーワード一覧をユーザ辞書として追加し、PHPとRubyで使ってみる

こんばんは。最近mecabをいじっています。 今回はmecabにWikipediaのタイトルとはてなキーワード一覧をユーザ辞書として追加してみたいと思います。そしてプログラム上で使ってみます。 といっても、結構他の人がやっていてやり方を分かりやすくまとめてくだ…

mecabのインストールと辞書追加

こんばんは。 今回はMacにmecabを入れ、PHPで使えるようにしたいと思います。 なお、私の場合はphpenvでPHPを管理しているので、以下はそちらに合わせた環境構成となります。 mecabインストール まずはmecabのインストールです。 Homebrewで簡単に出来ます。…

HomebrewでApache、PHP、MySQL、phpMyAdmin追加

こんばんは。 ローカルでの開発環境として今までMAMPを使っていましたが、MacにはMAMPを使わずともApacheやPHPなどがあるので、どうせならそちらを使いたいと思い、MAMPを使わない環境構築をしてみました。 今回は、Apache、PHP、MySQL、phpMyAdminを使える…

【Excel】条件付き書式でセル内の文字列が改行されているかを判断する

こんばんは。 今回はエクセルについての豆知識です。 エクセルで最近条件付き書式を使って強調表示とかをよく使います。 その際に、”セル内の文字列が改行されている場合セルの書式を変更する”というような条件付き書式を設定したかったのですが、ここで結構…

Homebrewで入れたものまとめ

こんにちは。 今回はHomebrewで入れたものについてまとめたいと思います。自分のメモ用です。 随時更新すると思います。 インストールしたもの一覧 curl git node wget perl-build plenv pyenv rbenv ruby-build rbenv-default-gems openssl readline Ruby, …

ターミナルの便利なショートカットとコマンドまとめ

こんにちは。 今回はターミナルについて、ショートカットキーとかコマンドの小技とかまとめたいと思います。 これで作業効率を劇的にアップさせましょう! ターミナルの便利なショートカット 使用頻度は完全に主観です。 Altキーを使えるようにするには、タ…

【Ruby】HomebrewでrbenvをインストールしてRubyの最新版をインストール ついでにpyenvとplenvも入れる

こんばんは。 MacにはデフォルトでRubyが入っていますが、バージョンが古いです。 今回は、Rubyのバージョン管理ツールであるrbenvをHomebrewで入れ、rbenvからRubyの最新版を入れてバージョンを切り替えるようにします。 ついでに、同じようにPython、Perl…

Macのバッテリー情報をグラフ化したやつ

こんばんは。 私の大学でアドベントカレンダーやってます。 その関係で、この記事のタイトルにもなっている、Macのバッテリー情報を取得してグラフ化するものについてQiitaに初投稿してみたのですが(前から使ってはいましたが)、いやー便利ですね。 kobito…

vimのプラグインについて

こんにちは。 最近色々とVimのプラグインについて調べていたので、ここでまとめてみたいと思います。 .vimrcはこちらで公開しているのでよろしければ。 今回はまずVimのプラグインを自動管理してくれるNeoBundleというツールを入れ、それから各プラグインをN…

dotfilesをGitHubで管理する

こんにちは。 最近tmuxやvimのプラグインにも手を出し始めました。 その結果.vimrcや.tmux.confなどのドットファイル(設定ファイル)を割と頻繁にいじるようになったので、これらをGitHubで管理しようと思います。 ちょっとめんどくさそうで後回しにしてい…

tmuxの導入とよく使うコマンドまとめ

こんばんは。 tmuxをご存知でしょうか? 自分は知ってはいたのですが使い方がよく分からず、使っていませんでした。 しかし、その便利さに気がついてからはもう必須となりました。 sshしているときに複数のターミナル(画面)を使いたい時も便利ですし(OS X…

Mac(OS X)ではcronじゃなくてlaunchdでやる

こんにちは。 前にcrontabの書き方についてこちらの記事に書きましたが、Macの場合はlaunchdを使ったほうが良いみたいです。 今回はlaunchdについて書きたいと思います。 launchdとは? launchdはデーモン、アプリケーション、プロセス、スクリプトの起動・…

【PHP】CakePHP2の環境構築と初期設定

こんばんは。 今更ですが、CakePHP2系列の環境構築と初期設定のやり方をまとめておきます。 ここではTwitterBootstrapの導入まで行います。 複数人で開発するときに環境構築のところで色々エラーが出て非常にめんどくさい思いを今したので・・・。 1. CakePH…

crontabの書き方と安全な使い方

こんばんは。 今回、何気に今までcrontabをあまり使っていなかったので、その使い方とかをまとめてみたいと思います。 cronとは cronはUNIX系のデーモン(常駐プログラム)の一種で、ユーザが設定したスケジュールに基づいて指定したコマンドとかを自動で実…