PHP基本

php基本
(先生に本を借りたので内容をピックアップしてメモ)-saka
【文字列】

$str = "文字列";
print "moji=$str";//→「moji=文字列」 (代入されて表示)
print 'moji=$str';//→「moji=$str」  (そのまま表示)

【ヒヤドキュメント】

print <<htmlの中身
HTMLBLOCK
*注意点 ヒヤドキュメントの締め言葉は厳密にそれだけ書かないといけない。締めのキーワードが書かれている行にはTABもいれてはいけない。空白もだめ。セミコロンもいらない。

【配列変数を出力する場合】

たとえばデータベースのデータを取り出すような場合、$row['fish_size']こういう配列変数を使って取り出すわけです。
これを出力する時は、{$row['fish_size']}こうやる。

【文字列のチェック】

strlen(trim($_POST['zipcode'])) //(trimで前後の空白を消し、strlenで文字数を数える)
strcasecmp($_POST['email'],'xxxx@xx.xx') //(大文字小文字を区別せず文字列を比較、同一であれば0を返す。)

【文字列のフォーマットprintf】

printf("ZIP code is %05d,$zip");
// %=フォーマット開始記号 05=五文字分を0でパディング(データが5文字に満たない時は5文字になるように残りを0で埋める) d=十進数
http://www.php.net/sprintf

【文字列、大文字小文字】

print strtolower('*****');//小文字に
print strtoupper('*****');//大文字に
print ucwords('*****');//先頭だけ大文字に

【文字列、一部取得】

print substr('*****',4,2);//4文字目から2文字を取得
print substr('*****',-4,2);//最後の4文字目から2文字を取得

【配列と文字列】

$str = array('aaa','bbb','ccc');
$string = implode('*' , $str);// 配列を文字列にする。aaa*bbb*ccc
$str = explode('*',$string);//文字列を配列にする。

【関数】

      • 引数のデフォルト値

引数が来るかこないかわからない時は、あらかじめ引数をセットしておいて、来たときだけデフォルトを使わないということができる。

function($str = "default"){
print($str);
}

複数の引数をとる場合で、デフォルト値が含まれる場合はデフォルト引数は最後につける。
function($val,$str = "default"){
print($val);
print($str);
}

function($str = "default",$val){ //←これはダメ
print($val);
print($str);
}

グローバル変数

関数内変数=ローカル変数
関数外変数=グローバル変数

関数からグローバル変数へアクセスする方法は下のふたつ。
global $str; //←関数内でグローバル変数にアクセスすることを宣言する。
$GLOBALS('str') //←GLOBALSという名前の特殊な配列変数。この配列の中にグローバル変数が格納されている。Keyに変数名を指定すると値を返してくる。

【foreach】
foreach($moto as $value){}
$motoという配列変数がある場合に、値を順番に$value(というあたらしく定義した変数)に代入して中身がなくなったら抜ける。
$moto[0][itiban];
$moto[1][niban];
こういう感じ。

foreach($moto as $key => $value){}
この場合はキーまで使えますよということ。
$moto[key1][value1];
$moto[key2][value2];
たぶんこんな感じ。