icon
icon

PHPでディレクトリを作成する方法を現役エンジニアが解説【初心者向け】

初心者向けにPHPでディレクトリを作成する方法について解説しています。ディレクトリを作成するにはmkdir関数を使います。その際にパーミッションを設定する必要があります。パーミッションはファイルやフォルダに設定する権限で、所有者・グループ・その他のユーザーに対する読み書き実行を表しています。

テックアカデミーマガジンは受講者数No.1のプログラミングスクール「テックアカデミー」が運営。初心者向けにプロが解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。 ※ アンケートモニター提供元:GMOリサーチ株式会社 調査期間:2021年8月12日~8月16日  調査対象:2020年8月以降にプログラミングスクールを受講した18~80歳の男女1,000名  調査手法:インターネット調査

今回は、PHPでディレクトリを作成する方法について解説します。

 

そもそもPHPについてよく分からないという方は、PHPとは何なのか解説した記事を読むとさらに理解が深まります。

 

なお本記事は、TechAcademyのオンラインブートキャンプPHP/Laravel講座の内容をもとに紹介しています。

 

田島悠介

今回は、PHPに関する内容だね!

大石ゆかり

どういう内容でしょうか?

田島悠介

PHPでディレクトリを作成する方法について詳しく説明していくね!

大石ゆかり

お願いします!

 

PHPでディレクトリを作成する方法

ディレクトリとは

ディレクトリというのは、パソコンを利用する際のフォルダと同じイメージで良いです。サーバなどでフォルダのことをディレクトリという言い方をします。PHPでは、ディレクトリをプログラム上で作成することが可能です。

 

サンプルコード

<?php
  mkdir("/path/to/my/dir", 0777);
?>

 

解説

1行目の<?phpでPHPのプログラムの開始を意味しています。

2行目のmkdir(“/dir”, 0777);で、mkdir関数を利用して実際にdirという名称のディレクトリを作成しています。0777の部分は記載しなくても同様の動作になります。0777と記載することで、作成したディレクトリに対して、誰でも読み書き可能な状態に設定することが可能です。この0777などの部分をパーミッションと呼びます。

3行目の?>ではPHPプログラムが終了したことを意味します。

 

パーミッション例

ここでは一般的によく利用されるパーミッションの数字と意味を解説します。

0600

所有者に読み込み、書き込みの権限を与え、その他のユーザには何も許可しません。

 

0644

所有者に読み込み、書き込みの権限を与え、その他のユーザには読み込みを許可します。

 

0755

所有者に全ての権限を与え、その他のユーザには読み込みと実行権限を許可します。

 

0750

所有者に全ての権限を与え、所有者が属するグループに読み込みと実行権限を許可します。

 

実際にPHPでディレクトリを作成してみよう

変数を利用した処理の例

サンプルコード

<?php
  $techacademy= './dir/study';
  mkdir($techacademy, 0777)
?>

 

解説

1行目の<?phpでPHPのプログラムの開始を意味しています。

2行目の、$structure = ‘./dir’;では、techacademy変数に、作成するディレクトリ名を格納しています。今回は、dirディレクトリの直下に、studyディレクトリを作成するという意味です。

3行目で、techacademy変数を利用して作成するディレクトリを指定し、パーミッションには0777を指定することで誰でも読み書きが可能なディレクトリが作成されました。

 

今回は、PHPでディレクトリを作成する方法について解説しました。

 

[PR] PHPプログラミングで挫折しない学習方法を動画で公開中

筆者プロフィール

中本賢吾(なかもとけんご)

アジマッチ有限会社 代表取締役社長

開発実績:PHPフレームワークを利用した会員制SNS・ネットショップ構築、AWSや専用サーバー下でLinuxを使用したセキュアな環境構築、人工知能を利用したシステム開発、店舗検索スマホアプリ開発など。

地域の職業プログラマー育成活動では、小学生がオリジナルAndroidアプリをGooglePlayでリリース、NHK Whyプログラミング入賞、全国Programing Festival入賞。ゲームで遊ぶより作ろうぜ!を合言葉に、小学生でも起業できる技術力を育成可能で有ることを証明し続けている。

 

大石ゆかり

内容分かりやすくて良かったです!

田島悠介

ゆかりちゃんも分からないことがあったら質問してね!

大石ゆかり

分かりました。ありがとうございます!

 

TechAcademyでは、初心者でもPHPやフレームワークのLaravelを使ってWebアプリケーション開発を習得できるオンラインブートキャンプPHP/Laravel講座を開催しています。

挫折しない学習方法を知れる説明動画や、現役エンジニアとのビデオ通話とチャットサポート、学習用カリキュラムを体験できる無料体験も実施しているので、ぜひ参加してみてください。