めも。
例。
SELECT CONCAT_WS('-', col_1, col_2) as col_12 FROM table_name
上記のSQLは「col_1」と「col_2」の値を「-」で連結した結果がかえってくる。
CONCAT_WS()関数は、第1引数に連結文字列を、それ以降の引数(任意)に連結対象の文字列(またはカラム)を指定する。
上記の例は、関数の出力結果に「col_12」というカラム名をつけて取得している。
めも。
例。
SELECT CONCAT_WS('-', col_1, col_2) as col_12 FROM table_name
上記のSQLは「col_1」と「col_2」の値を「-」で連結した結果がかえってくる。
CONCAT_WS()関数は、第1引数に連結文字列を、それ以降の引数(任意)に連結対象の文字列(またはカラム)を指定する。
上記の例は、関数の出力結果に「col_12」というカラム名をつけて取得している。
■お手軽な方法
1, 行列を入れ替えたい範囲を指定する。
2, 「Ctrl + C」 でコピーした後、貼り付けたいセル上で右クリック。「形式を選択して貼り付け(S)」→「形式を選択して貼り付け(S)」を選択。
3, 出てきたダイアログの下部、「行列を入れ替える(E)」のチェックを入れ、「OK」をクリック。
4, すると下記のように入れ替えた結果を出力してくれる。
■おまけ(関数を使う方法)
1, 行列入れ替え後の表を貼り付けたい範囲を指定する。
2, その状態のまま、上の値入力欄に「=transpose(」と入力。
※閉じカッコ「)」は入力しないこと。
3, 範囲選択状態になっているのを確認した後、行列を入れ替えたい範囲をドラッグアンドドロップで指定する。
4, transpose関数の閉じカッコを入力する。
5, この状態で「Ctrl + Shift + Enter」を入力する。すると指定した範囲に行列入れ替え後のデータが貼り付けられる。
※選択範囲をオーバーしたデータは破棄されるので注意されたし。
メモ。
// 要素を取得して var input = document.querySelector('*[name="user"]'); // 値を設定してみる input.value = 'hogehoge'; // select要素も上記のようにvalue属性を設定してやればOK var select = document.querySelector('select'); // 値を設定 select.value = 1234; // submit要素を取得してデータを送信したい場合 var submit = document.querySelector('input[type="submit"]'); // 下記のようにsubmitする。 submit.form.submit();
PHP5.5より実装。
下記のような連想配列があったとする。
$array = [ [ 'id' => 1, 'key' => 3352, 'name' => 'hoge', 'email' => 'hoge@example.com' ], [ 'id' => 2, 'key' => 2265, 'name' => 'fuga', 'email' => 'fuga@example.com' ], [ 'id' => 3, 'key' => 7311, 'name' => 'piyo', 'email' => 'piyo@example.com' ] ];
上記連想配列中の「email」要素のみを取り出したい場合、array_column()を用いると便利。
$emails = array_column($array, 'email'); var_dump($emails); ↓ array(3) { [0]=> string(16) "hoge@example.com" [1]=> string(16) "fuga@example.com" [2]=> string(16) "piyo@example.com" }
また、第3引数にも入力配列中の要素を指定することで結果配列のキーに指定した要素の値を挿入してくれる。
$emails = array_column($array, 'email', 'key'); var_dump($emails); ↓ array(3) { [3352]=> string(16) "hoge@example.com" [2265]=> string(16) "fuga@example.com" [7311]=> string(16) "piyo@example.com" }
PHP5.5より追加。
どこで使うのかピンと来ないシリーズ。
$var = '0'; $res = boolval($var); var_dump($res); ↓ bool(false)
PHP5.5より前バージョンでも、下記関数を実装すれば同様の処理となる。
if(!function_exists('boolval')) { function boolval($var) { return !!$var; } }
めも。
$a = false; $b = true; // 波括弧を用いて記述する場合は「else if」と二単語に分割しても良い。 if($a) { echo '1'; } else if($b) { echo '2'; } // コロンを用いて記述する場合は「elseif」と記述しなければならない。 if($a): echo '1'; elseif($b): echo '2'; endif;
基本的にelseとifは分割せず「elseif」と記述しておけばすべての場合に対応できる模様。
今更for文の仕様を知ったという。
まずは普通のfor文
for($i = 0; $i < 10; $i++) { echo '$i : '."$i\n"; } ↓ $i : 0 $i : 1 $i : 2 $i : 3 $i : 4 $i : 5 $i : 6 $i : 7 $i : 8 $i : 9
複数式を記述するパターン。
for($j = 0, $k = 0; $j < 10, $k < 30; $j++, $k += 5) { echo '$j : '."$j\n"; echo '$k : '."$k\n"; } ↓ $j : 0 $k : 0 $j : 1 $k : 5 $j : 2 $k : 10 $j : 3 $k : 15 $j : 4 $k : 20 $j : 5 $k : 25
各式をカンマ「,」で区切ることで複数式を評価させることが可能。
めも。
下記例。
function a() { return [ 'one' => 'aaa', 'two' => 'bbb', 'three' => 'ccc' ]; } $a = a()['two']; var_dump($a); ↓ string(3) "bbb"
※PHP5.3までは上記の記述方法をするとシンタックスエラーとなり処理がストップする。