ユーザ定義関数
・ユーザ定義関数で引数、戻り値を明示的に指定すること
・記述方法
・型名 6
・記述方法
・型名 6
宣言型
function ファンクション名 (引数の型 引数, 引数の型 引数): 戻り値の型 {
…
}
bool | 真偽値 |
float | 浮動小数点数 |
int | 整数 |
string | 文字列 |
callable | コールバック関数 |
void | 何も返さない(戻り値のみ指定可) |
下記のprocessNumberは$num、…を引数$funcで処理し、結果を配列として返す関数です。
function processNumber( 1 $func, float …$args): array {
foreach ( 2 as $arg) {
$result[] = 3;
}
return $result;
}
4 $x, $y 5 = processNumber(
fn($num) 6
5, 15);
function processNumber( 1 $func, float …$args): array {
foreach ( 2 as $arg) {
$result[] = 3;
}
return $result;
}
4 $x, $y 5 = processNumber(
fn($num) 6
5, 15);
function processNumber( callable $func, float ...$args): array {
foreach ( $args as $arg) {
$result[] = $func($arg);
}
return $result;
}
[ $x, $y ] = processNumber(
fn($num) => $num**2
5, 15);
標準クラスライブラリ
日付文字列「2023年8月3日」を、DateTimeクラスを使ってかいせきし、「YYYY/MM/DD(曜日)」の形式で出力してください
$dt = 1::2(‘Y年m月d日’, ‘2023年8月3日’);
print $dt->3(‘Y/m/d (D)’);
$dt = 1::2(‘Y年m月d日’, ‘2023年8月3日’);
print $dt->3(‘Y/m/d (D)’);
$dt = DateTime::createFromFormat('Y年m月d日', '2023年8月3日');
print $dt->format('Y/m/d (D)');
format文字
j、d、D、n、m、M、y、Y、g、G、i、s
j、d、D、n、m、M、y、Y、g、G、i、s
j | 日付(1~31) |
d | 日付(01~31) |
D | 曜日(Mon~Sun) |
n | 月(1~12) |
m | 月(01~12) |
M | 月(Jan~Dec) |
y | 年(2桁) |
Y | 年(4桁) |
g | 時(1~12) |
G | 時(0~23) |
i | 分(0~59) |
s | 秒(0~59) |
インスタンスメソッドの呼び出し
->
アロー演算子
日付/時刻を指定のフォーマットで整形するメソッド
format
$dt = 1 2(‘2022/8/4 10:26:30’);
print $dt->3(‘Y年m月d日 H時i分’); // 結果:2022年08月04日 10時26分
$dt->4(1 5(‘P1YT10H’));
print $dt->3(‘Y年m月d日 H時i分’); // 結果:2023年08月04日 20時26分
print $dt->3(‘Y年m月d日 H時i分’); // 結果:2022年08月04日 10時26分
$dt->4(1 5(‘P1YT10H’));
print $dt->3(‘Y年m月d日 H時i分’); // 結果:2023年08月04日 20時26分
$dt = new DateTime('2022/8/4 10:26:30');
print $dt->format('Y年m月d日 H時i分'); // 結果:2022年08月04日 10時26分
$dt->add(new DateInterval('P1YT10H'));
print $dt->format('Y年m月d日 H時i分'); // 結果:2023年08月04日 20時26分
$dt1 = new 1(‘2020/8/20 10:38:32’);
$dt2 = new 1(‘2023/12/10’);
$interval = $dt1->2($dt2, true);
$dt2 = new 1(‘2023/12/10’);
$interval = $dt1->2($dt2, true);
$dt1 = new DateTime('2020/8/20 10:38:32');
$dt2 = new DateTime('2023/12/10');
$interval = $dt->diff($dt2, true);
・指定されたフォルダーにディレクトリ配下のファイル情報にアクセスするためのクラス
・上記クラスの主なメソッド
・ファイルがフォルダーであるか
・ファイルが通常のファイルであるか
・上記クラスの主なメソッド
・ファイルがフォルダーであるか
・ファイルが通常のファイルであるか
new DirectoryIterator(string $path)
is_dir($path)
is_file($path)