のむログ

技術メモ / 車 / 音楽 / 雑記 / etc...

PHP

fuelPHPでサブクエリを実行する

サブクエリ サブクエリとは、複数のクエリを組み合わせて、目的のデータを抽出することです。クエリのネストを作成し内側のクエリを評価し、その評価値を用いて外側のクエリを評価します。 SELECT 注文番号 FROM 注文票 WHERE 商品コード = ( SELECT 商品コ…

PHPで配列のドットアクセス

結論 関数を作って擬似的にドットアクセスをします array( 'B'=>array( 'C'=>'OK' ) ), ); var_dump(array_get($array, 'A.B.C'))…

PHPエクステンションで自作関数を作る!(PHP7向け)

はじめに 準備 PHP本体のソースを取得 指定したバージョンをチェックアウト 雛形の作成 ビルド/動作確認 自作関数の登録と実装 関数の登録 関数本体の実装 ZEND_PARSE_PARAMETERS_START(MIN, MAX) Z_PARAM 実際に呼び出してみる 付録 PHP_FE arg_info構造体…

PHPの無名関数

無名関数 無名関数の例 変数への無名関数の代入 親スコープからの変数の引き継ぎ クロージャのスコープ コールバック $thisの自動バインド 静的無名関数 静的無名関数へのオブジェクトバインド 無名関数 無名関数とはクロージャとも呼ばれ、関数名を指定する…

PHPでデバック出力に最適なのは何か

開発する上で変数内に格納されているデータを確認することはしばしばあります。 このとき、何で表示するのが一番いいのでしょうか。いろいろ見ていきます var_dump __debugInfo() var_export __set_state() print_r おまけ var_dump void var_dump ( mixed $…

var_dumpが省略される件

PHP

要素の多い配列を表示させると、決まって省略される。 var_dump関数の前に以下を記述すれば省略されることなく表示させることができる。 ini_set('xdebug.var_display_max_children', -1); ini_set('xdebug.var_display_max_data', -1); ini_set('xdebug.var…

効率的なSQLの書き方とは

単純にデータベース設計に関わってきたのでメモ程度に書きます。随時更新していく予定です。 ==== 08/27更新 ==== ORDER BY サンプルデータ 数値で並び替えするパターン 文字列で並び替えするパターン 数値、文字列(複数カラム)で並び替えするパターン GRO…

WordPressの投稿ページでPHPを使う

WordPressの投稿ページでPHPコードを利用する WordPressでは、PHPで動的ページを生成しています。しかし、投稿ページや固定ページでは、PHPコードを直接利用することはできません。なので、「ショートコード」という方法を用いて利用できるようにします。 流…

foreachの不思議

PHP

phpのバージョンによる違いなのか ローカル: php7.1 サーバー: php7.0 phpのバージョンによるのか、同じような動作をさせるためには、少し修正を加える必要があった。なんでなんだろう。