バカンス駆動開発

この前バカンスって言ったら「古っ」って言われました

PHPのsessionファイルの生成場所、中身、有効期限など

php

PHPでセッションを開始すると$_SESSIONに値を出し入れできますが実態はsessionファイルに物理的に書き込まれています。*1 中身見たことなかったのでちょっと調べました。 sessionファイルの場所 生成場所の優先順位 php.iniのsession.save_path php.iniのsys…

phpenvで複数バージョンのPHPを同時に利用する

1つのvagrantで複数のPHPを同時に利用できるようにします。この記事では5.6.23と7.0.0を共存させます。 CentOS6.5でapache2.4.6+PHP-FPMの構成です。 phpenv,php-buildはインストールされている前提で始めます。 起動スクリプトの用意とListenするポートの設…

ajaxのエラー(500 internal server error)の解決方法

ajax通信処理でこの画像のように500 (Internal Server Error)と表示さる場合、js側ではなくサーバープログラムが間違っています。 どういうエラーなのか確かめるにはデベロッパーツールのNetworkタブを確認します。サーバーからレスポンスを受け取った以降の…

Ansible+Vagrant(ansible_localプロビジョナ)でPHPのローカル開発環境を作る

注意 この記事ではVagrant1.8から導入されたansible_localプロビジョナを使用していますが、現在インストールされるansibleのバージョンが上がってしまいVagrant側がまだそれに対応していません。 issueにも上がっていますので近々対応されるかも・・? gith…

PHP BLT #3 発表まとめ! #phpblt

2016年3月1日、メルカリオフィスで開催されたPHPBLT#3に参加してきました! オーディエンスより発表者の方が多いという血気盛んなこのイベント、LT枠以外にも「ブログ書く枠」が用意されていて自分はこの枠で参加してきました。 第3回の今回初参加でしたがめ…

yumのリポジトリの追加とか設定とか

サードパーティ製リポジトリを追加する(2016/02/01時点) // epel sudo rpm -Uvh "http://ftp-srv2.kddilabs.jp/Linux/distributions/fedora/epel/6/x86_64/epel-release-6-8.noarch.rpm" //RPMForge sudo rpm -Uvh "http://pkgs.repoforge.org/rpmforge-rele…

python始めるにあたって漁った記事など

自然言語処理楽しそうだなーとかPHP飽きたなーとかでpython始めました。 pythonの始めの一歩をスタートするために読んだ記事などをメモしておきます。 現在のpythonのバージョンは3系が最新らしいのでできるだけ2系は排除する。 PHPでいうところのPHP: The R…

XdebugをLinux(CentOS6)に入れる。初期設定とかはまったとことか

ソースから入れる方法です。 // 最新のバージョンをダウンロード # wget http://www.xdebug.org/files/xdebug-2.3.3.tgz # tar xzvf xdebug-2.3.3.tgz # cd xdebug-2.3.3/ # phpize # ./configure --enable-xdebug # make # make install phpizeで以下のよう…

backboneからのajaxがpayloadでPHPの$_POSTで取得できない

なんか何言ってるかよくわからないタイトルになっちゃいました。 状況としては、BackboneからサーバーにBackbone::synsを通じてPOST→通常のajaxと同じようにサーバー側(PHP)の$_POSTで取得しようとすると値が空。 chromeのdevelper toolのnetworkタブで送信…

Google Spread SheetでworksheetIDの取得

worksheetIDの取得 GASのスプレッドシートの内容を取得するにはスプレッドシートを識別するkeyとシートを識別するworksheetidの2つが必要ですが、worksheetidが単純に取得できません。keyはURLにあるので簡単なのですが。 gdata api - How to convert Googl…

ubuntuでMySQLの日本語が文字化けしてる

vagrantでubuntuに入ってたMySQLが日本語文字化けしているのでその対応。 boxファイルはこちらを利用しました。 r8/vagrant-lamp まず現在の文字セットを確認 //mysqlログイン % mysql -u root -p mysql> show variables like "char%"; +-------------------…

ubuntuでphpunitの出力でvar_dumpが省略表示される

ubuntuでphpunit内でvar_dump表示すると省略表示されました。 これはまぁXdebugのせいなんですが、php.iniファイルを見に行ってもxdebugに関する項目がない。 というわけでCentOSとちょいと場所が違うようです。 ここにはxdebugの設定が書いていない! $ sud…

Windows7でコマンドラインでgitを使う

自宅ではMacのターミナルからgitコマンドを叩いてますが、職場がWindows7なのでWinでもコマンドで叩くためのあれこれ。 1. msysgitインストール CUIのクライアントソフトとしてmsysgitというものがあります。 Git for Windows bashでgitを扱う感じをWindows…

gitのリモートリポジトリをさくらのVPSに設置して自動ビルドさせる方法

前提 すでに公開ディレクトリに走らせているソースコードがある。 今までは一人で管理していたが、複数人でgitで管理することにする。 ローカルからプッシュすると公開ディレクトリに自動でビルドされるようにする サーバー環境はさくらのVPSでCentOS5.6。 g…

オフラインリファレンス&スニペット管理の「Dash」がすごくいい

Mac

Dash (Docs & Snippets)Bogdan Popescu開発ツール無料 Dashとは OSXのアプリ「Dash」とは、リファレンスを閲覧するためのアプリです。自作スニペットの管理もできます。 良いと思った所を列挙します リファレンスの数がかなりある 数えてないんですけど、結…

AjaxにおけるCSRF攻撃対策

前回で近いうちにAjaxのセキュリティについて書きます!と宣言しましたが、あれはつまりCSRF攻撃の対策についてでした。今回はAjaxでCSRF対策を行う方法を書きます。 先に結論 Ajax通信におけるCSRF攻撃対策は通常の遷移時に施す対策と考え方はかわりません…

Ajaxこと始めまとめ

Ajaxこと始めまとめ jQuery.ajax()のまとめ: 小粋空間 こと始めにはもってこいのエントリです。 jQuery.ajax(settings) - jQuery API 1.4.4 日本語リファレンス - StackTrace どんなプロパティがあるか?を使い方と合わせて見やすくまとめられています。 サ…

でぃすぱっちゃうぞ〜編 - CakePHPをもくじとしてPHPを学ぶシリーズ02

個人的にはもう前回で連載終了かと思いましたが、なんとか第2回も公開できるようです。 lib/Cake/bootstrap.phpを見る そもそも「bootstrap」て なんでしょうか? ブートとは 〔 起動 〕 〔 ブートストラップ 〕 - 意味/解説/説明/定義 : IT用語辞典 コン…

Dispatcherまで辿りつけない編 - CakePHPをもくじとしてPHPを学ぶシリーズ01

パーフェクトPHP でフレームワークを作ってみて、次にどうしようか考えていました。 結論としては、オープンソースのフレームワークをもくじとしてPHPを学ぶ事にしました。 理由としては、Webアプリケーションを作るのに必要な機能はフルスタックなフレーム…

PHPのサブクラスでコンストラクタを書くときにはまった話

php

PHPでサブクラス内でコンストラクタを書くときの注意点はマニュアルに書いてあります。まずはそちらを引用。 PHP: コンストラクタとデストラクタ - Manual 注意: 子クラスがコンストラクタを有している場合、親クラスのコンストラクタが 暗黙の内にコールさ…

web開発のためのapacheやコンテンツディレクトリのパーミッション関連まとめ

apacheを安全に動かすために // apacheの設定ファイル内にapacheの実行ユーザーを // 指定している項目があるのでそれを確認 # vi /etc/httpd/conf/httpd.conf // apacheの実行ユーザーをapache:apacheに指定 User apache Group apache // httpdを再起動 # /…

MySQL脱初心者に向けてのまとめ

パーフェクトPHPのフレームワークを読解し終わりました。 途中にSQL文で「JOIN」とかテーブル作成時のインデックスとか出て来てわからなかったので、MySQLについてまとめました。 まぁまずは初心者へ MySQL入門 (全19回) - プログラミングならドットインスト…

PHPでクラスをspl_autoload_registerを使ってオートロードする

php

PHPでインスタンスを生成する際はその対象となるクラスが実装されたファイルがあらかじめ読み込まれてなければなりません。

VagrantとVirtualboxのバージョンについて

Vagrantの使い方についてはこちらの記事がとてもわかりやすいです。 Vagrant で自分の PC に「作って、壊して、元に戻せる」サーバを作る - Shin x blog 記事にそってVagrantを使ってVirtualbox上に仮想サーバーを作る際に、各々のバージョンに気をつけない…