Rumah >pembangunan bahagian belakang >masalah PHP >Bagaimana untuk menyelesaikan masalah keizinan yang tidak mencukupi dalam php fopen

Bagaimana untuk menyelesaikan masalah keizinan yang tidak mencukupi dalam php fopen

藏色散人
藏色散人asal
2021-10-28 09:12:103768semak imbas

Penyelesaian kepada masalah php fopen tidak mempunyai kebenaran yang mencukupi: 1. Buka tetingkap arahan terminal 2. Jalankan arahan "sudo chmod 666 testOpen.php" dalam terminal.

Bagaimana untuk menyelesaikan masalah keizinan yang tidak mencukupi dalam php fopen

Persekitaran pengendalian artikel ini: sistem linux5.9.8, PHP versi 7.1, komputer DELL G3

PHP menggunakan fopen () fungsi Gesaan kebenaran tidak mencukupi apabila membuka fail

Fungsi PHP fopen()

Takrifan dan penggunaan fungsi: fungsi fopen() membuka fail atau URL .
Sintaks:

fopen(nama fail,mod,include_path,context)

Dua parameter terakhir adalah pilihan, kami hanya menggunakan dua parameter pertama, kod adalah seperti berikut:

<?php
//打开文件流
$myfile = fopen("newfile.txt", "w")        
or die("Unable to open file!");
//向文件中写入字符串
fwrite($myfile, "Hello World");
//关闭文件句柄
fclose($myfile);
?>

Fungsi yang dilaksanakan oleh kod tersebut ialah: buka fail bernama newfile.txt dalam laluan semasa dalam mod penulisan, dan cuba buatnya jika fail itu tidak wujud. Selepas membuka fail, tulis rentetan Hello World pada fail, dan akhirnya tutup fail itu.

Tiada fail newfile.txt dalam laluan folder semasa Apabila melaksanakan kod di atas, ralat berikut berlaku:

Amaran: fopen(newfile.txt): gagal. strim terbuka: kebenaran Tidak mencukupi dalam
/home/yums/web/blog_for_r&d/scripts/testOpen.php pada baris 3
Tidak dapat membuka fail!

Kebenaran tidak mencukupi? Masalah yang paling biasa di bawah Linux ialah anda tidak mempunyai kebenaran untuk mencipta fail pada cakera keras? Saya cuba memberikan kebenaran yang lebih tinggi kepada testOpen.php, jadi saya melaksanakan arahan berikut dalam terminal:

sudo chmod 666 testOpen.php

Dengan cara ini, fail PHP akan mendapat kebenaran untuk mencipta fail, dan saya akan memuat semula halaman . Cuba temuduga, WTF, ia masih soalan yang sama!

Amaran: fopen(newfile.txt): gagal membuka strim: Kebenaran tidak mencukupi dalam
/home/yums/web/blog_for_r&d/scripts/testOpen.php pada baris 3
Tidak dapat untuk membuka fail!

Lupakan, saya tidak memerlukan fungsi ini untuk mencipta fail. Saya menggunakan gedit untuk mencipta fail newfile.txt sendiri. Oleh itu, saya melaksanakan arahan berikut dalam terminal:

gedit newfile.txt

Dengan cara ini, saya mencipta fail dan menyegarkannya, bagaimanapun, kebenaran itu masih tidak mencukupi fail newfile.txt mempunyai. Jalankan perintah berikut dalam terminal:

ls -all

Saya mendapati bahawa newfile.txt yang dibuat dengan Notepad hanya mempunyai kebenaran membaca dan tiada kebenaran menulis, masalahnya terletak di sini kebenaran menulis fail newfile.txt Kebenaran:

sudo chmod 666 newfile.txt

Sekarang muat semula halaman, tiada ralat dilaporkan dan rentetan yang sepadan ditulis dalam fail.

Pembelajaran yang disyorkan: "Tutorial Video PHP"

Atas ialah kandungan terperinci Bagaimana untuk menyelesaikan masalah keizinan yang tidak mencukupi dalam php fopen. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn