【JavaScript】 postMessageでクロスドメインメッセージ通信をする方法

原則、JavaScriptでは異なるドメイン間のAjax通信はできません。つまり、自サイトから他サイトのデータを取得することはできません。HTML5では、異なるドメイン間でも安全にデータをやり取りできるよう、postMessage が用意されました。

(引用:http://qiita.com/yasumodev/items/d339a875b4b9bf65d156

jQueryを使うべき7つの理由

①クロスブラウザ。ブラウザによる違いを吸収してくれる

クロスブラウザ対応は必須、サイトに訪れるユーザーがwindowsやmacなどPCの違いはもちろん、スマホ場合もある。それらに対応した処理をすべて自分1人で作るのは現実的ではなく、無駄も多い。

②JavaScriptより少ないコードの記述で、より多くの処理を行う

ソースがシンプルな方が、間違えも少なく、改良もしやすい。

③CSSのセレクターが使える

動的にCSSをいじるなどの操作は当たり前にある

④軽い

JSコードのデータ量は画像や動画に比べれば小さいので十分に軽いものだといえる。

⑤事実上の標準ライブラリ

使っている人が多いと、質問もしやすいし、エンジニアも確保しやすい。

⑥API(アプリケーション・プログラム・インタフェース)が豊富

いろんな操作がができるようになっている。便利。

⑦プラグインが豊富。jQuery公式のユーザインターフェース(UI)用ライブラリもある

世界中で優秀なエンジニアが、拡張用のプラグインを作っており提供されている。

もちろん有料のものもあるが、それは当然。それに見合うだけの作りこみがされており、感動するはずだ。

【JQuery】「id」「クラス名」「要素名」目的のHTML要素を参照したい!一番最初に覚えておきたいセレクタ指定方法3つ!

■id名から要素を指定する

$("#id名")

idはユニークなため,反映されるのは一つの要素となる。

 

■クラス名から要素を指定する

$(".class名")

クラス名に一致する要素に反映される。

 

■要素名を指定して要素を指定する

$("要素名")

指定した要素全てに反映される。

【viエディタ】開いたソースを全選択してwindowsでテキストに張り付けてバックアップする方法

今回はviで全て選択するコマンドです。
サーバー側のOSはLinux。開発マシンはwindowsで行っている時、設定ファイルなどをコピペしてローカルにバックアップしたいという時があるかと思います。

どうやればいいのか、操作ポイント3つあります。

 

■キーボードのコピーを使えるようにする

set clipboard=unnamed

まず、ひとまずキーボードのコピーができるようするコマンドをLinux内で打ちます。コマンドを打うったらCtrl + c で何かしらコピーしてみましょう。感動します。
■viで全て選択するコマンドを使う

1G v G $

次に、実際にファイルをviコマンドで開いて、こちらを行いましょう。

「1G」で最初の行へ移動し「v」でビジュアルモードへ入り「G」で最終行へ移動し「$」で最終行の末尾へ移動。すると大きなファイル内を一望できます。

 

■コピー用に指定範囲をマウスなどで選択しなおして、Ctrl+C 以上!

Ctrl+C

ビジュアルモードにしていおくことで、上手くコピーができます。ついに、目的の情報をローカルにコピーができた瞬間。これでLinuxとwindowsは仲良しですね。

【exec関数】PHPにて重い処理を別スレッドで実行する方法

exec("nohup php -c '' '起動PHPファイルパス' '引数ARGS' > /dev/null &");

 

上記の様に、例えばメルマガの配信をセットしたりすると、メルマガの全ての送信を待たないとレスポンスは帰って来ませんので次の処理を行う事が出来ません。そこで、上記の様な重い処理を別ファイルにして、exec()にて呼び出します。後半の『 > /dev/null &』で返却値を捨てていますので、レスポンスを待たずに次の処理へ進める事が出来ます。
また、前半の『nohup』では、バックグラウンドにて処理中のタスクがログアウトしてしまったり、
ハングアップしてしまっても、処理を続けるように指定します

(参考:http://web-terminal.blogspot.jp/2013/04/php.html

 

■その他。アップロードの経過を見る

しかし、PHP5.4以降はINI オプション session.upload_progress.enabled
を有効にすることでアップロードの進捗をPHPから追えるようになりました。

(引用:http://senoway.hatenablog.com/entry/2013/06/13/112935

JavaScriptのAjaxをsetInterval()やsetTimeout()と併用すれば、PHPで取得した進捗状況を断続的に取得し続けられます。

クオリティとスピードの両立を図れるFlashがHTMLよりも優位に立つ場面も多くある

■Flashの現状とこれからの展望(後編)

 HTMLとFlashは敵対する関係ではなく、共存しお互いのメリットを生かし、デメリットをつぶし合うことができる。サイトの内容に応じて、よりリーチしたいターゲットの環境に合わせてフラットに使い分けたり共存させることで、ユーザーにもクライアントにも制作者にとってもベストな体験を提供できるのだ

(引用:http://www.mdn.co.jp/di/articles/2659/

 

 

 

【FuelPHP】マイグレーション実行時、syntax error near unexpected token `(‘ってエラーが出たらどうすればいい?

syntax error near unexpected token `(‘

マイグレーションのコマンドを考えて実行したらこのようなエラ―出るときがあります。

(についてなんか言われているぞ!?ということなのですが、これはコマンドで(を受けてつけていないよということで、結論から言うと[にすると正常に解決(実行)します。

 

例)これはhoge01_tblというテーブルに、hoge_idというカラムを追加するためのマイグレーションを作ろうとした場合です。

■エラーになる

env FUEL_ENV=develop php oil generate migration add_hoge_id_to_hoge01_tbl hoge_id:varchar(50);

これだと、(が受け付けないよ!ということでsyntax error near unexpected token `(‘エラーになってします。しかし、[に直してあげると、成功します。

■成功する

env FUEL_ENV=develop php oil generate migration add_hoge_id_to_hoge01_tbl hoge_id:varchar[50];

 

以上です、参考にしてみてください。

NetBeansでFuelPHPのユニットテストを実行する方法

NetBeansでFuelPHPのユニットテストを実行する方法

環境は以下の通りで、各種ソフトウェアはインストール済みという前提で進めます。パスやバージョン等は、必要に応じて読み替えてください。XAMPPやMacに入っているPHPを使う場合も、ほぼ同様の設定で問題ないと思います。

ソフトウェア バージョン 備考
NetBeans 7.1 PHPバンドルがインストールされているものとする
MAMP 2.0.5 /Applications/MAMP にインストール済みとする
PHP 5.3.6 MAMPのPHPを使うものとする
PHPUnit 3.6.11 MAMPのPHPUnitを使うものとする
FuelPHP 1.2.1 /User/username/work/fuelphp に配置しているとする *

* usernameには、Macのユーザ名が入ります。

(引用:http://mawatari.jp/archives/to-run-the-unit-tests-in-netbeans-fuelphp

Windows + コマンドプロンプト + PHPUnit でユニットテスト

任意のディレクトリ内(C:\xxx\phpunit とする)に、入手した phpunit.phar を配置する。

C:\xxx\phpunit 内に phpunit.cmd を作成し、以下の内容を記述する。(PHPへのパスは環境に合わせて設定する。)
http://refirio.org/view/364

PHPの静的コード解析ツール『PHPMD』の設定方法

PHPMDとは
Hudson+phpmdでPHPコードの問題を自動検出する方法 | Ryuzee.comに記載されているのは以下のような内容です。

(参考:http://qiita.com/yuji0602/items/28b0c2363bae8fce055a

 

 

CodeSnifferも合わせて設定したいところです。

NetBeansに、PHP CodeSnifferプラグインを追加すれば、プログラムを書いているそばからコーディング規約に則っているかを自動チェックし、違反があればすぐに表示してくれます

(引用:NetBeans + PHP CodeSniffer プラグインのインストール