PHP,CS,フロントエンド,基本情報技術者/学習記録3
PHP
ドットインストールの詳解PHP基礎文法編
https://dotinstall.com/lessons/basic_php_grammer/
▼気付き
1.Javaにはないよな?というもの
⑴<<<'EOT'
$変数 = <<<'EOT' //””で囲った場合、変数展開も可能
//記述内容。ここに書いたテキストの改行や字下げは保持したまま変数に代入可能
EOT;
⑵ぽい奴も計算される件
echo 2 + '3'; //結果は5。文字列でも数値っぽいやつは自動的に計算されちゃう。
⑶変数について調べる。Javaではリフレクションがこれに該当するのだろうか?Class.forName()~とか
var_dump($name);
//または↓
print_r($name);
⑷関数を呼び出すときに引数を渡さなかった場合のデフォルト値を設定
function showAd($message = 'Ad') //←ここがポイント!
{
//処理
}
⑸PHPでは、関数の外で定義された変数を使う事はできない!!
使うときは、
global $name
という風に書く。
⑹無名関数(クロージャー)を変数に代入する
$sum = function($a,$b,$c) { //←)と{の間にスペースあける
return $a + $b + $c;
}; //←無名関数を変数に代入するときはセミコロン必要!
//呼び出すときは
echo $sum(1,2,3);
⑺配列の要素に別の配列をいれる
$moreScores = (555,72);
$scores = (
90,
40,
...$moreScores, //←この書き方がポイント!
100,
);
⑻可変長引数と配列
function sum(...$numbers)
// 「...$numbers」は可変長引数。実引数を複数入れた場合、配列変数$numbersの要素となる
{
foreach($numbers as $number){
$total += $number;
}
return $total;
}
⑼配列の各値を複数の変数に一度に代入する…list関数
list(変数1,変数2,…) = 配列;
2.Javaとは違う表現をするんやな、というもの
⑴定数宣言
Javaではfinalで定数宣言してたが…
define('NAME','にゃーにゃーむし'); //$は頭につけなくていい
//または↓
const NAME = 'にゃーにゃーむし';
//今の時点では上記2つの厳密な違いは考えなくていいらしい
⑵単一の値を真偽値として評価する際、falseになるもの
…false, 0, '0', '', null, []
⑶引数や戻り値の型指定
//?string でnullまたはstring
//:void で戻り値はvoidという事
function showInfo(?string $name,int $score):void
{
//処理
}
/*
上記でも型指定できているが、弱い型付け。2つ目の引数を例えば'4'と文字列を指定しても
数値っぽいから数値に自動的に変換されるから。
もし厳密な型付けをするなら、
関数記述の前に、
declare(strict_types = 1);
と記述する!!
*/
3.Javaと同じですやん!というもの
⑴キャストのやり方
⑵条件演算子(三項演算子)の使い方
return $total<0 ? 0 : $total
CS
初級編の続き
▼気付き
⑴JavaScriptでは、数値と文字列が+によって連結された時、数値が自動的に文字列に変換される
console.log(3 + "abc"); //3abc
⑵平均加速度
…物体のt1秒後の速度をv1、t2秒後の速度をv2とすると、加速度a
つまり加速度は(速度÷時間)
HTML&CSS&JavaScript
▼気付き
⑴初めてみたタグ
…<hr> ホライゾンタグ。罫線のタグ。
⑵BootstrapはTwitterの開発チームが作ったらしい。
⑶Bootstrapは使い方色々。CDN(Contents Delivery Network)が一番簡単。
DLしなくても直接参照できる。
⑷HTMLの、CSSを読み込む<link rel>は上から順番に適用されていくので、
オリジナルのCSSより上の行にBootstrapCDNのリンクを記述する事。逆にすると、せっかく作ったオリジナルのCSSがBootstrapに上書きされてしまう。
⑸Bootstrapにはsanitize.cssとほぼ同機能のnormalize.cssが搭載されている。だから、わざわざ自分でリセットCSSを準備する必要がない。
基本情報技術者
▼気付き
⑴ソフトウェアは記憶装置に記憶された「1」「0」の信号という形で存在している。(知ってたつもりだけど、なんだか腑に落ちた!
⑵プログラム記憶方式(ITパスポートの勉強のときに出会わなかった単語)
…主記憶装置に記憶されたプログラムをCPUが順に取り出し、解読・実行する方式
⑶CPUのクロックについて
・「高」「低」で1クロック。
・例えば2GHzとは、1秒間に20億回の信号を生成される。
・内部クロック(CPU内部)と外部クロック(CPUと主記憶などの周辺回路を結ぶ伝送路のクロック周波数)。PCのカタログなどでいうクロック数は内部クロックを指す。
⑷バス…CPUや主記憶、キャッシュメモリなどでお互いがデータの送受信をするための伝送路、血管のようなイメージ。