【コピペ・早引き】覚えられないPHP関数

あれ、どっちだったけ〜っていつまでたっても覚えられないPHP関数群です。100%自分用です。

文字列を配列にする

explode( '区切り文字', $string );

配列を文字列にする

implode( '区切り文字', $array );

文字列から文字を検索したいです

// ヒットした位置を返すので、TRUEとして0が帰ってくる場合がある。
$string = '検索対象の文字列';
$search = '検索する文字';
if ( strpos( $string, $search ) === false ) {
	// 見つからなかったよ。
} else {
	// 見つかりましたよ。
}

検索した文字を変換したいです

$search  = '変換したい文字'; // 配列でもよい。
$replace = '変換後の文字'; // 配列でもよい。$searchが配列で、$replaceは文字でもよい。
$string  = '検索して変換したい文字列';
$string = str_replace( $search, $replace, $string );

0詰めしたい時〜

sprintf( '%02d', 1 ); // 01
sprintf( '%03d', 1 ); // 001
// 文言でもイケる。
sprintf( 'あなたのIDは%04dです', 1 ); // あなたのIDは0001です

日付をフォーマットしたいのですが〜

$date = new DateTime( '2018-01-01' );
echo $date->format( 'Y-m-d H:i:s' );

ループの途中でスキップしたり抜け出したいです(foreachでも使えます)

for ( $i=0; $i<=10; $i++ ) {
	if ( $i <= 2 ) {
		continue;
	}
	if ( $i == 9 ) {
		break;
	}
	echo $i;
}

switch文・・・caseの後に()は要らないです。

switch (式){
	case 値1:
		break;
	case 値2:
	case 値3:
		break;
	default:
}

参照渡しってどこにどう書くんでしたっけ?

function func( &$obj ) { // ここと
	foreach ( $obj as &$value ) { // ここです。
		$value = $value . '上書き保存';
	}
	unset($value); // unsetしないと、ごく稀に思わぬ事態に。
}

これってなんていうんだっけ?

$bool ? func1() : func2(); // 三項演算子

インスタンスって・・つまりなに?

$myclass = new MyClass(); // $myclassがインスタンス

正規表現(preg_match)で何が返ってくるの?

$string	 = '〒164-0011 東京都中野区'; // 検索対象
$pattern = '/[0-9]{3}-[0-9]{4}/'; // 郵便番号の正規表現
// マッチした場合に1を。マッチしなかった場合は0、エラーが発生した場合はFALSEを返す。
if ( preg_match( $pattern, $string ) ) {
    // マッチしました。
} else {
	// マッチしませんでした。
}