めも。
例。
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までは上記の記述方法をするとシンタックスエラーとなり処理がストップする。