タグ

2013年8月31日のブックマーク (3件)

  • PHPの関数定義はこんな変態的な書き方ができる

    すまん変態的は言い過ぎた。 この書き方を常用してる人がいたらごめんなさい。 けど書いてみたらとっても新鮮な感じがしたので。 開始と終了 まず大前提として、 PHP では開始タグ <?php 以降の部分が PHP として評価され、 開始タグより前の部分や終了タグ ?> より後の部分はそのまま出力されますね。 これを実行すると、こんな具合になります。(改行は一部省略) ここはそのまま出力される PHP で echo しています ここもそのまま出力される ここも PHP の世界 このファイルを直接開いても、 別のファイルから include / require しても同じことですね。 PHP を書く人にとっては当たり前だと思いますけど念のため。 関数定義の中でやってみる では関数定義の最中に閉じタグ ?> を入れるとどうなるか。 この場合、何も出力されません。 確かに PHP ファイル内で <?

    PHPの関数定義はこんな変態的な書き方ができる
    s_mori
    s_mori 2013/08/31
  • SELECT ... FOR UPDATEとロックの挙動 - walf443's blog

    kamipoさんが補足を書いてくれたので、参照するとよいです。 基礎的だけど、SELECT ... FOR UPDATEをちゃんと理解できてない気がするな、ということで実際にコンソールで打ちながら挙動を確認してみた。 今回確認した環境は、 mysql> show variables like 'tx_isolation'; +---------------+-----------------+ | Variable_name | Value | +---------------+-----------------+ | tx_isolation | REPEATABLE-READ | +---------------+-----------------+ 1 row in set (0.00 sec) mysql> show variables like 'version'; +-----

    SELECT ... FOR UPDATEとロックの挙動 - walf443's blog
  • PHPとかいろいろ演算代入系の演算子のハナシ - なんたらノート第三期ベータ

    PHPの関数定義はこんな変態的な書き方ができる - 頭ん中 に、続いて。アンリーダブルコードで勉強しようというのがあった、そのとある勉強会の発表ネタです。 これは、PHPMarkdownパーサ の実装を可能な限りそのまま綺麗に変換してJavaScriptに移植しようという js-markdown-extra をやっていたとき、大ハマりして修正に苦労したバグの話から来てます。 演算代入。+= とか *= とかのやつ。関数型の人以外はきっと常用してますね。じゃあ問題。 <?php $tokens = array("a", "b", "c"); $tokens[0] .= array_shift($tokens); print_r($tokens); こうするとどんな結果が出力されるでしょうか。PHPです。 自身の先頭から要素を取り出して、それを先頭要素に文字列追加する。array_shift

    PHPとかいろいろ演算代入系の演算子のハナシ - なんたらノート第三期ベータ
    s_mori
    s_mori 2013/08/31