月別アーカイブ: 2013年4月
reverse breadth first searchについて
phpの参照渡しについて
・phpのオブジェクトはデフォルトでは参照渡しとなる
http://php.net/manual/ja/language.oop5.references.php
・もうひとつ。関数の戻り値の参照渡しについて。
<?php class HelloWorld { var $value = "default"; function &getValue() { return $this->value; } } $helloWorld = new HelloWorld(); $v =& $helloWorld->getValue(); $v = "HelloWorld"; print $helloWorld->value;
これで「HelloWorld」と出力される。関数「&getValue」の「&」とメソッド実行の戻り値「=&$helloWorld->getValue();」の「&」のどちらが抜けても参照渡しにはならない。その場合は値渡しとなり「default」と出力される。
http://d.hatena.ne.jp/cloned/20060510
・foreachの参照渡しについて
http://php.net/manual/ja/control-structures.foreach.php
phpの継承使用時のコンストラクタの挙動について
Twitter bootstrapのnavののタブを中央揃えにするには
.nav-tabs > li, .nav-pills > li { float:none; display:inline-block; *display:inline; /* ie7 fix */ zoom:1; /* hasLayout ie7 trigger */ } .nav-tabs, .nav-pills { text-align:center; }
by http://stackoverflow.com/questions/9421966/how-do-i-center-the-twitter-bootstrap-tabs-on-the-page
幅優先探索(breadth first search)について勉強になったサイト
・解説
http://itpro.nikkeibp.co.jp/article/COLUMN/20120827/418466/?ST=develop&P=3
http://d.hatena.ne.jp/keyword/%C9%FD%CD%A5%C0%E8%C3%B5%BA%F7
・PHPで書かれたサンプルコード
http://www.stoimen.com/blog/2012/09/10/computer-algorithms-graph-breadth-first-search/
・関連記事、深さ優先探索について
http://d.hatena.ne.jp/lettas0726/20110418/1303097692
・phpの関連関数
array_shiftはキュー
array_popはスタック
イメージとしてキューは底のない入れ物で、最初に入れた物が取り出される時はどの物よりも最初になる
スタックは底のある入れ物で、最初に入れた物が最後に取り出される
ソースコードを表示させるwordpressプラグイン
画像を遅延読み込みさせるjqueryのlazy loadをjquery mobileで使用するには
画像がうまく読み込まれなくて躓いていたが、解決に至ったサイト
http://stackoverflow.com/questions/10236358/lazy-loading-images-within-jquery-mobile
lazy loadの使い方
http://www.appelsiini.net/projects/lazyload
自分のソースコードの抜粋
<script> $(document).delegate('#archive', 'pageinit', function() { $(this).find(".image").lazyload({ effect: "fadeIn", effectspeed: 1000, threshold : 200 }); $('#archive').trigger("create"); }); </script> <img src="ダミーの画像URL" data-original="実際の画像URL" class="image">
htmlspecialcharsとhtmlentities
htmlspecialcharsはデフォルトで4つの文字(<、>、&、”)をHTML の表現形式に変換します。対して、htmlentitiesはデフォルトで先の4つを含む100個の文字を変換します。より厳密にエスケープしたいなら、 htmlentitiesを使う必要があります。
特殊文字のエスケープについて
MySQLにデータを挿入する際、SQLインジェクション対策に、特殊文字をエスケープする関数「mysqli::real_escape_string」を使う。
by http://www.php.net/manual/ja/mysqli.real-escape-string.php
特殊文字をHTMLで表示する際はhtmlspecialchars関数を使う
by http://php.net/manual/ja/function.htmlspecialchars.php