Linux・HTML・CSS・PHP・JavaScript
これ全部勉強しろとか言われると泣きたくなってくるよね。
まぁ確かにそうなんだが、別にライブラリとかどうでもいいからね。
Linuxはファイル操作とviだけ覚えればすばらしいと。
何より重要なのはviで、あとはmv,cp,rm,mkdir,chmod,cdだけあればいいと。
HTMLは完璧に使いこなして欲しいけど、CSSはリファレンス見ながらでもOK。
PHPはライブラリ複雑すぎ、ライブラリ見ながらじゃないと不可能。
JavaScriptもリファレンス見ながらでいいけど、DOMの感覚が…
まぁそういうことなので気楽に取り組んでいかないとなとか。
この中でちょっと厄介なのはPHPですよね。
PHPのライブラリは意味不明だし、関数長すぎだし。
しかしながら何がいいかというと、扱いがいいのよね。
最近PHPの動作するWebスペースが増えている気がするが、
多くのところで使えると言えるのはPerl CGIぐらい。
Ruby CGIって流行ってますかね?あんまり流行ってないと思いますね。
その都合もあって、WebアプリケーションはPHPかPerl CGIで作られてるのが多い。
まぁそういうことですよね。
基本的にはPerlの置き換えに近い物がありますけど、
かなり見た目も違いますね。
あと、Perlの型は非常に希薄だが、PHPではそれなりには考えられている。
けど、+は数字の足し算、.は文字列の結合とかなってるのはPerlと同じ。
まぁこういう風にPerlの習慣が多少変わらなくても済むようにはなってるみたい。
けどこういうのがあるから困るというのもあるわけですけどね。
例えば0、””、NULL、FalseはどれもFalseやらNULLと比較しても真だったり。
この対策には$x===Falseとかいう変な演算子が必要。
===は型も含めて一致するかどうかという演算子。PHPにおいては超重要。
なんかこういう泥沼はPerlにもあるような気がする。undefかはdefinedを使ったり。
以上のことは慣れれば何とも思わんことなのだが、変な感じと言えば確か。
まぁこの事実に慣れれば非常に扱いやすい。
あとはWebアプリケーション製作の流儀とかありますからね。
PHP的に言えば、htmlspecialcharsでHTMLの特殊文字をエスケープしてもらうとか。
実はこれでもHTMLでも属性に入れるときは問題があるが、それを除けばOK。
さて、せっかくだから配列操作でもメモしておこうかな。
$arr=array('1','9');
$arr[]=2;
for($i=0;$i echo "$i : $arr[$i]\n";
}
list($x, ,$z)=$arr;
print "($x,$z)\n";
$arr['foo']=100;
foreach($arr as $key=>$val){
echo "$key : $val\n";
}
arrayは配列を作る構文、listは配列を受ける構文。
添え字を省略すると末尾に追加される。push的なイメージ。
明らかにPerlの機能のパクリなのだが、まぁ微妙に冗長な気がしてならない。
これ見てて気付いたかも知れんが、PHPは連想配列も配列の一種なのよね。
だから急に連想配列のように振る舞ってもOK。
こんなことマネしないでくださいね。
まぁそれはそうと、foreachを使うと便利。
foreach($cur in $arr)のような記述法でなく、foreach($arr as $cur)なので注意。
$key=>$valのように受ければキーと値をまとめて取り出すこともできるので便利。
使いこなそうとすると何かと難しそうですね。
まぁそうなんだけど、やたらライブラリが充実してるのが利点です。
この辺利用しながらやっていくのがポイントです。
関数名長いけどコピペすればOK。
いや、開き直れば使いやすいもんです。
PHP マニュアルが一番便利かな。公式のですね。
まぁ日本語の検索効かんのが痛いが、体系的にまとめられてるので。