<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-comment">// 這部分與文章內容無關,可以是一些初始化代碼</span></span><span>
</span><span><span class="hljs-title function_ invoke__">date_default_timezone_set</span></span><span>(</span><span><span class="hljs-string">'Asia/Shanghai'</span></span><span>);
</span><span><span class="hljs-variable">$logFile</span></span><span> = </span><span><span class="hljs-keyword">__DIR__</span></span><span> . </span><span><span class="hljs-string">'/log.txt'</span></span><span>;
</span><span><span class="hljs-keyword">if</span></span><span> (!</span><span><span class="hljs-title function_ invoke__">file_exists</span></span><span>(</span><span><span class="hljs-variable">$logFile</span></span><span>)) {
</span><span><span class="hljs-title function_ invoke__">file_put_contents</span></span><span>(</span><span><span class="hljs-variable">$logFile</span></span><span>, </span><span><span class="hljs-string">"日誌初始化\n"</span></span><span>);
}
</span><span><span class="hljs-variable">$timestamp</span></span><span> = </span><span><span class="hljs-title function_ invoke__">date</span></span><span>(</span><span><span class="hljs-string">'Y-m-d H:i:s'</span></span><span>);
</span><span><span class="hljs-title function_ invoke__">file_put_contents</span></span><span>(</span><span><span class="hljs-variable">$logFile</span></span><span>, </span><span><span class="hljs-string">"腳本運行時間: <span class="hljs-subst">$timestamp</span></span></span><span>\n", FILE_APPEND);
</span><span><span class="hljs-meta">?></span></span><span>
<hr>
</span><span><span class="hljs-meta"><?php</span></span><span>
<span class="hljs-comment">/**
* 標題: 如何將 touch() 函數與 chmod() 一起使用來調整文件權限?
*
* 在 PHP 中,touch() 函數常用於創建新文件或者更新現有文件的修改時間,
* 而 chmod() 函數則用於設置文件的訪問權限。將二者結合使用,可以方便地
* 在創建文件的同時控制它的權限,確保文件在應用中可以被正確讀寫。
*
* 示例步驟如下:
*/</span>
</span><span><span class="hljs-comment">// 1. 使用 touch() 創建文件</span></span><span>
</span><span><span class="hljs-variable">$filePath</span></span><span> = </span><span><span class="hljs-keyword">__DIR__</span></span><span> . </span><span><span class="hljs-string">'/example.txt'</span></span><span>;
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-title function_ invoke__">touch</span></span><span>(</span><span><span class="hljs-variable">$filePath</span></span><span>)) {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"文件創建或修改時間已更新: <span class="hljs-subst">$filePath</span></span></span><span>\n";
} </span><span><span class="hljs-keyword">else</span></span><span> {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"文件創建失敗\n"</span></span><span>;
}
</span><span><span class="hljs-comment">// 2. 使用 chmod() 設置文件權限</span></span><span>
</span><span><span class="hljs-comment">// 比如設置為 0644,即所有者可讀寫,組用戶和其他用戶可讀</span></span><span>
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-title function_ invoke__">chmod</span></span><span>(</span><span><span class="hljs-variable">$filePath</span></span><span>, </span><span><span class="hljs-number">0644</span></span><span>)) {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"文件權限已設置為 0644\n"</span></span><span>;
} </span><span><span class="hljs-keyword">else</span></span><span> {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"文件權限設置失敗\n"</span></span><span>;
}
<span class="hljs-comment">/**
* 3. 注意事項:
*
* - chmod() 的權限參數通常使用八進製表示,例如 0644、0755。
* - 權限的實際生效還取決於操作系統和 PHP 運行的用戶權限。
* - 在某些系統中,如果 PHP 進程沒有足夠權限,chmod() 可能會失敗。
* - touch() 也可以更新現有文件的訪問時間和修改時間,而不仅仅是創建文件。
*
* 結合使用 touch() 與 chmod() 可以方便地初始化文件,例如日誌文件、
* 臨時文件或配置文件,保證它們的權限符合安全策略。
*/</span>
</span><span><span class="hljs-meta">?></span></span><span>
</span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-comment">// 这部分也與文章内容无关,可以是腳本尾部的日誌或清理操作</span></span><span>
</span><span><span class="hljs-title function_ invoke__">file_put_contents</span></span><span>(</span><span><span class="hljs-variable">$logFile</span></span><span>, </span><span><span class="hljs-string">"腳本執行完畢\n"</span></span><span>, FILE_APPEND);
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>