PHPの覚書です。
【PHP】wp_mkdir_pでディレクトリ作成(WordPress)
wp_mkdir_pの関数のメリットは次のとおりです。
- セキュリティ:wp_mkdir_p関数はWordPressの推奨関数で、適切なパーミッションを自動的に設定します。直接mkdirを使用するよりも安全です。
- 互換性:wp_mkdir_p関数はさまざまなサーバー環境で動作するよう設計されています。
- 再帰的な作成:wp_mkdir_pは必要に応じて親ディレクトリも作成します。
- エラーハンドリング:wp_mkdir_pは成功か失敗かをブール値で返すため、エラーハンドリングが簡単です。
wp_mkdir_p関数は以下の特徴を持っています。
- ディレクトリが既に存在する場合、trueを返します。
- ディレクトリが存在せず、作成に成功した場合もtrueを返します。
- ディレクトリの作成に失敗した場合のみfalseを返します。
コードの次のように修正してみました。
if (!file_exists($title_images_dir)) {
$created = wp_mkdir_p($title_images_dir);
if ($created) {
error_log('Directory created: ' . $title_images_dir);
} else {
error_log('Failed to create directory: ' . $title_images_dir);
}
}
// if (!file_exists($title_images_dir)) {
// mkdir($title_images_dir, 0755, true);
// if (mkdir($title_images_dir, 0755, true)) {
// error_log('Directory created: ' . $title_images_dir);
// } else {
// error_log('Failed to create directory: ' . $title_images_dir);
// }
// }
直接mkdirを使用し、パーミッションを手動で設定する方法よりも、多くの場合において適切です。
ご参考になれば幸いです。
コメント