PHP はファイルのアクセス許可をどのように処理しますか? (コード例)
ファイル権限とは、ファイルの読み取り、書き込み、実行など、システム内の特定のファイルに対して実行できる操作を指します。以下の記事では、PHPを使ってファイルのパーミッションを確認・変更する方法を紹介しますので、ご参考になれば幸いです。
PHP は、バックグラウンドで適切な権限を自動的に付与します。たとえば、書き込み用に新しいファイルを作成すると、PHP はそのファイルに読み取りおよび書き込み権限を自動的に付与します。さらに、PHP には、ファイルのアクセス許可を確認および変更するための便利な関数がいくつか用意されています。
PHP でファイルのアクセス許可を確認するにはどうすればよいですか?
PHP には、ファイルのアクセス許可をチェックするための 3 つの関数が用意されています:
is_readable() 関数: 読み取りアクセス許可があるかどうかを確認するために使用されます。が取得された場合は true が返され、それ以外の場合は false が返されます。
is_writable() 関数: 書き込み権限があるかどうかを確認するために使用され、ファイルへの書き込みが許可されている場合は true を返し、そうでない場合は false を返します。
is_executable() 関数: ファイルの実行許可があるかどうかを確認するために使用され、ファイルの実行が許可されている場合は true を返し、そうでない場合は false を返します。
コード例:
<?php header("content-type:text/html;charset=utf-8"); $fn = 'demo/test.txt'; $msg = is_readable($fn) ? $msg = '文件是可读的' : $msg = '文件不可读'; echo $msg . '<br/>'; $msg = is_writable($fn) ? $msg = '文件是可写的' : $msg = '文件不可写'; echo $msg . '<br/>'; $msg = is_executable($fn) ? $msg = '文件是可执行的' : $msg = '文件不可执行'; echo $msg . '<br/>'; ?>
出力:
これらの関数に加えて、PHP には fileperms() 関数も用意されています。特定のファイルに設定されたアクセス許可を表す整数。
<?php $fn = 'demo/test.txt'; $fp = fileperms($fn); echo substr(sprintf('%o', $fp), -4); //0666 ?>
出力:
0666
PHP でファイルのアクセス許可を変更するには?
ファイルのアクセス許可またはモードを変更するには、chmod() 関数を使用する必要があります。まず、アクセス許可を設定するファイル名を渡す必要があり、次に必要なアクセス許可を指定する必要があります。 chmod() 関数は、アクセス許可が正常に設定された場合は true を返し、それ以外の場合は false を返します。
ファイルのアクセス許可は、3 桁の 8 進数で表されます。
# 最初の数字は、ファイルの所有者がファイルに対して実行できる操作を指定します。
# 2 番目の数字は、ファイルの所有者グループがファイルに対して実行できる操作を指定します。
##●3 番目の数字は、各ユーザーがファイルに対して実行できる操作を指定します。 次の表は、特定のユーザー (ユーザー、ユーザー グループ、または全員) のアクセス権限を表す各数値の値を示しています。● 0: 読み取り、書き込み、または実行ができません。#● 1: 実行のみ可能
##● 2: 書き込みのみ可能
##● 3: 書き込みおよび実行可能##● 4: 読み取り#のみ可能
##● 5: 読み取りと実行が可能です#● 6: 読み取りと書き込みが可能です
#● 7: 読み取り、書き込み、実行が可能ですたとえば、次のようになります。作成者または所有者を設定します。 ファイルは読み取り専用です。その他のユーザーには、次のコードを使用します。<?php $fn = 'demo/test.txt'; //更改权限 chmod($fn, 0444); //读取权限 $msg = is_readable($fn) ? $msg = '文件是可读的' : $msg = '文件不可读'; echo $msg . '<br/>'; $msg = is_writable($fn) ? $msg = '文件是可写的' : $msg = '文件不可写'; echo $msg . '<br/>'; $msg = is_executable($fn) ? $msg = '文件是可执行的' : $msg = '文件不可执行'; echo $msg . '<br/>'; ?>
注: 644 より前の 0。PHP にそれを 8 進数として解釈させます。
おすすめのビデオチュートリアル: 「
PHP チュートリアル」
以上がPHP はファイルのアクセス許可をどのように処理しますか? (コード例)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











PHP 8.4 では、いくつかの新機能、セキュリティの改善、パフォーマンスの改善が行われ、かなりの量の機能の非推奨と削除が行われています。 このガイドでは、Ubuntu、Debian、またはその派生版に PHP 8.4 をインストールする方法、または PHP 8.4 にアップグレードする方法について説明します。

ファイルのアップロードを行うには、フォーム ヘルパーを使用します。ここではファイルアップロードの例を示します。

CakePHP は、PHP 用のオープンソース フレームワークです。これは、アプリケーションの開発、展開、保守をより簡単にすることを目的としています。 CakePHP は、強力かつ理解しやすい MVC のようなアーキテクチャに基づいています。モデル、ビュー、コントローラー

Visual Studio Code (VS Code とも呼ばれる) は、すべての主要なオペレーティング システムで利用できる無料のソース コード エディター (統合開発環境 (IDE)) です。 多くのプログラミング言語の拡張機能の大規模なコレクションを備えた VS Code は、
