PHP
以前に書いた( http://d.hatena.ne.jp/gallu/20140429/p2 ) http://blog.sumyapp.com/2014/04/rubyist-is-better-than-phper/ なのですが。 記事を全面的に改訂致しました との事で拝見したのですが…相変わらず駄目過ぎるので、まぁこれも何かの縁かなぁと思…
ん…うん知ってはいたのですが、以下のコードは、大変に憂慮すべき動作をします。PHP君は。 aaa = 10; var_dump($obj); $ php t.php object(hoge)#1 (1) { ["aaa"]=> int(10) } なんだろうねぇ普通に考えたら「エラー」とか、せめても「警告」とか出てくれり…
そういやすっかり忘れてたよねぇ的小ネタ。
そういえば…とふと思った事があったので実験。 また後で確実に「同じようなこと」を試すような気がしたので、備忘録。
へ〜、な感じなので。 元ネタ http://d.hatena.ne.jp/ajiyoshi/20120912/1347434440 [ 'test' => 5 ]]; var_dump(json_encode($awk)); $awk = []; $awk['key'] = array(); var_dump(json_encode($awk)); $awk = []; $awk['key'] = new arrayObject(); var_d…
コマンドを発行 php composer.phar update 以下のエラー PHP Fatal error: Cannot redeclare class Symfony\Component\Console\Formatter\OutputFormatterStyle in phar:///home/vagrant/acty_server/composer.phar/vendor/symfony/console/Symfony/Componen…
微妙にあちこち賑わっている気がしたので、なんか必要になる前に、おいちゃんの見解を。 まず前提として「適切にもちいられていない」ケースは排除。 具体的には「**をやる、というルールを作っても、守られない/中途半端なら意味がない」ってのはどこにい…
自作しているBtoCのゲームサイトのauthentication、のお話し。 前提としては「スマフォ&ガラケー用のゲームサイト」。現在絶賛作成中*1。 タブレットとPCはどうすっかねぇ、と。 排除はしない。デザイン的に想定するかしないか。 ガラケー以外は「レスポン…
ん…たいしたことやってる訳でもないんだけどねぇ。 「そこに思考が及ぶかどうか」ってのには以外と壁があるみたいで。それを「ど〜やって乗り越えさせるのか」を含めて考えてみたくて、ちょっと種まき。 いつものことではありますが、いつも以上になんか「ふ…
ちと興味があるので。 …おねちゅ気味なので、本当に備忘録程度。
某所でこんな質問をもらいまして。 うん確かに「ビット演算がわからない」と、それ以上に「なにに使うのかがわからない」って話はよく耳に目にするところなので。 せっかくなんで、Blogで返答をいたしますw 質問は、これ。 ビット演算子のこの部分が $a = 0…
きっかけは本日の講義でもらった質問。 PHPで、ダブルクォート内の変数が展開される、ってのはあって。 {}を入れないと「$に続く、有効な変数名を形成することが可能な最長のトークンを取得する」ってのが基本ざんす。 なので、以下は…
特に共有サーバで*1、エラー表示を抑止されちゃってるケース用のmemo。 .htaccessに書く場合 php_value display_errors 1 php_value error_reporting 32767 別ファイル経由で試す場合(確認したいファイル名は hoge.php とする)
んとぶっちゃけると「str_getcsv使うな」って感じ。 サンプルとか見てるといかにも「いけそ〜」な感じなのですが。実は「改行」を全く意識してくれないので、二次元配列を期待しているのに、ふつ〜に一次元配列でreturnしてくれやがります。 $s = "1,2,3\n4,…
ふと現場で質問されて、検証用に書いてみたコード。
まぁそもそもとして「一意(ユニーク)である」と「推測困難である」の間には深くて暗い漆黒の溝が広がっているのですが、って突っ込みを前提に。 PHPで、uniqidってのがありやして。 これは「一意な ID を生成する」関数です。 基本「マイクロ秒」基準で文字…
元ネタは、某所の書籍でみた、こんなコード。 foreach($data as $key => $val) { $$key = $val; } 見た瞬間から色々気になってはいたんだけど。 ふと思って試した実験コードの内容が、思ったよりもちょっとアレゲだったので共有。 まずは、初手の実験コード…
ちぃと興味があったので。 まずは以下のファイルを用意。includeされるクラスファイル、のイメージ。 val_ = ''; $this->val2_ = ''; $this->val3_ = ''; $this->val4_ = ''; } private $val_; private $val2_; private $val3_; private $val4_; } 基本的なr…
覚書なんで本当にmemo程度。 isEmpty()); var_dump(count($obj)); // 普通にforeach test for($i = 0; $i < 20; $i ++) { $obj->insert(rand(0, 100)); } var_dump($obj->isEmpty()); var_dump(count($obj)); foreach($obj as $key => $val) { print "{$key}…
あちこちのフレームワークでは「何してるんだろう?」って思ったので。 以下のフレームワークを調査してみますた。 CodeIgniter_2.1.2 cakephp-cakephp-e0b6f86 symfony-1.4.18 Symfony2 FuelPHP 調査は、サーバに入れてからgrepでini_setを探すという高難易…
5.3.10のソース基準で。UPGRADING - Added mbstring.http_output_conv_mimetype. This directive specifies the regex pattern of content types for which mb_output_handler() is activated. php.ini-development ; Default: mbstring.http_output_conv_mi…
php.ini側 ; magic_quotesとかあり得ないでしょ magic_quotes_gpc = Off ; 自動ってキライ mbstring.encoding_translation = Off mbstring.func_overload = "0" やむを得ず.htaccess ; magic_quotesとかあり得ないでしょ php_flag magic_quotes_gpc off ; 自…
一度整理したかったんだけど…思った以上に魔窟でした orz 大分とメモ書きなところもあるので、適当に脳内補完しつつ読んでみてください。 「理屈はえぇから設定みせろや」な場合(…まぁエンジニアとして妥当な姿勢かどうかには果てしなく疑問が残るところでは…
注意 結構「状況限定」なので、本当に「一案」程度。 前提 セッションIDが定期的に変わる。だから「セッションIDをtokenに」しにくい。 一案 「消すのが面倒くさければmemcachedにすればいいぢゃない」作戦 CSRFで引っ掛けたい画面を「画面A → 画面B」の遷移…
おおむねこんな感じを想定。 ベースになるのは /dev/urandom なので。「環境ノイズが以下略」的な話は、きっとなんとかなるだろうしてくれるだろうだからある程度暗号的に安全な擬似乱数であろう、ことを、期待(笑 shaが1ぢゃなくて512なのは、おおむね、お…
ちょろりと受験する流れになってみたので、まずはメモ。 http://www.phpexam.jp/summary/expert/ …ん…微妙に範囲がわかるようなわからんような。 Standard PHP Library (SPL) http://jp.php.net/manual/ja/book.spl.php 日付・時刻 http://jp.php.net/manual…
躊躇も脈絡も無く、start。 まずはinstall。 gitで引っ張ってこれるので大変においちゃん好み。 適当なディレクトリにおいておきましょう。 clone git://github.com/mlively/Phake.git phake今回は「phake」ってディレクトリにしておいた。素直というよりは…
いやまぁ何気にあちこちふらふらしているのですが、たまにはちゃんとBlogを書いておこうかなぁ、と。 以下、雑感連打です。 PHP と MySQL でカジュアルに MapReduce する (@yuya_takeyama/15 分/対象: GROUP BY で解決できない問題を持っている方) http://ww…
すげぇアバウトなインタフェース草案。 送信 // オブジェクトを作成 $msq = new mw_message_queue(); // key設定のやり方への可能性 $msq->set_key($key) $msq->set_key($config) // クラス継承してコンストラクタで設定 // メッセージを設定。stringでもオ…
ほんのりと、上で書くと面倒そうなネタがあったので。 msgtype(msg_sendの第二引数&msg_receiveの第三引数) & desiredmsgtype(msg_receiveの第二引数)にまつわる話題。 上述は、メッセージキューを「とにかく積んで、とにかく取り出す」なので、雑に値を決…