ฉันมีสคริปต์นี้บนเซิร์ฟเวอร์ที่รองรับ PHP ฟรีหนึ่งเครื่อง:
<html>
<body>
<?php
$file = fopen("lidn.txt","a");
fclose($file);
?>
</body>
</html>
มันสร้างไฟล์lidn.txtแต่มันว่างเปล่า
จะสร้างไฟล์และเขียนอะไรลงไปได้อย่างไรเช่นบรรทัด "แมวไล่หนู"
ฉันมีสคริปต์นี้บนเซิร์ฟเวอร์ที่รองรับ PHP ฟรีหนึ่งเครื่อง:
<html>
<body>
<?php
$file = fopen("lidn.txt","a");
fclose($file);
?>
</body>
</html>
มันสร้างไฟล์lidn.txtแต่มันว่างเปล่า
จะสร้างไฟล์และเขียนอะไรลงไปได้อย่างไรเช่นบรรทัด "แมวไล่หนู"
คำตอบ:
คุณสามารถใช้ฟังก์ชันระดับสูงกว่าเช่น:
file_put_contents($filename, $content);
ซึ่งเป็นเหมือนการเรียกfopen(), fwrite()และfclose()ต่อเนื่องในการเขียนข้อมูลไปยังแฟ้ม
เอกสาร: file_put_contents
put_file_contents()เปิดตัวครั้งแรกใน PHP5 และได้รับการรวมไว้ตั้งแต่ในเวอร์ชันต่อมาเช่นกัน
พิจารณาfwrite () :
<?php
$fp = fopen('lidn.txt', 'w');
fwrite($fp, 'Cats chase mice');
fclose($fp);
?>
fclose($fp) ) ฉันลองใช้$fp = fopen('lidn.txt', 'w+');แล้ว$fp = fopen('lidn.txt', 'a+');แต่ไม่ได้
$fp = fopen('lidn.txt', 'w');
fwrite($fp, 'Cats chase');
fwrite($fp, 'mice');
fclose($fp);
$text = "Cats chase mice";
$filename = "somefile.txt";
$fh = fopen($filename, "a");
fwrite($fh, $text);
fclose($fh);
คุณใช้ fwrite()
fclose($fh)) ฉันลองใช้$fh = fopen('lidn.txt', 'w+');`$ fh = fopen ('lidn.txt', 'a +'); `แต่ไม่ได้
เขียนไฟล์ได้ง่าย:
$fp = fopen('lidn.txt', 'w');
fwrite($fp, 'Cats chase mice');
fclose($fp);
ฉันใช้รหัสต่อไปนี้เพื่อเขียนไฟล์บนเว็บไดเร็กทอรีของฉัน
write_file.html
<form action="file.php"method="post">
<textarea name="code">Code goes here</textarea>
<input type="submit"value="submit">
</form>
write_file.php
<?php
// strip slashes before putting the form data into target file
$cd = stripslashes($_POST['code']);
// Show the msg, if the code string is empty
if (empty($cd))
echo "Nothing to write";
// if the code string is not empty then open the target file and put form data in it
else
{
$file = fopen("demo.php", "w");
echo fwrite($file, $cd);
// show a success msg
echo "data successfully entered";
fclose($file);
}
?>
นี่คือสคริปต์การทำงาน อย่าลืมเปลี่ยน url ในform actionและไฟล์เป้าหมายในฟังก์ชันfopen ()หากคุณต้องการใช้บนไซต์ของคุณ
โชคดี.
ในการเขียนลงไฟล์PHPคุณต้องทำตามขั้นตอนต่อไปนี้:
เปิดไฟล์
เขียนลงในไฟล์
ปิดไฟล์
$select = "data what we trying to store in a file";
$file = fopen("/var/www/htdocs/folder/test.txt", "a");
fwrite($file , $select->__toString());
fclose($file );ขั้นตอนมีดังนี้
ปิดไฟล์
$select = "data what we trying to store in a file";
$file = fopen("/var/www/htdocs/folder/test.txt", "w");
fwrite($file, $select->__toString());
fclose($file);fwrite()smidgen เร็วกว่าและfile_put_contents()เป็นแค่กระดาษห่อหุ้มสามวิธีนี้อยู่ดีดังนั้นคุณจะเสียค่าโสหุ้ยไป
บทความ
file_put_contents (ไฟล์ข้อมูลโหมดบริบท):
file_put_contentsเขียนสตริงไปยังแฟ้ม
ฟังก์ชันนี้เป็นไปตามกฎเหล่านี้เมื่อเข้าถึงไฟล์หากตั้งค่า FILE_USE_INCLUDE_PATH ให้ตรวจสอบเส้นทางรวมสำหรับสำเนาของชื่อไฟล์ สร้างไฟล์หากไม่มีอยู่จากนั้นเปิดไฟล์และล็อกไฟล์หากตั้งค่า LOCK_EX และหากตั้งค่า FILE_APPEND ไว้ ย้ายไปที่ท้ายไฟล์ มิฉะนั้นให้ล้างเนื้อหาไฟล์เขียนข้อมูลลงในไฟล์และปิดไฟล์จากนั้นปลดล็อกใด ๆ ฟังก์ชันนี้จะส่งคืนจำนวนอักขระที่เขียนลงในไฟล์เมื่อสำเร็จหรือเป็นเท็จเมื่อล้มเหลว
fwrite (ไฟล์สตริงความยาว):
fwriteเขียนไปเปิดฟังก์ชั่น file.The จะหยุดที่จุดสิ้นสุดของแฟ้มหรือเมื่อมันมาถึงความยาวที่กำหนดแล้วแต่ระยะใดถึง first.This ฟังก์ชันส่งกลับจำนวนไบต์ที่เขียนหรือเท็จเกี่ยวกับความล้มเหลว
file_put_contents()ทำงานใน PHP5 เท่านั้น ดูเหมือนจะไม่มีปัญหาในกรณีนี้ (คำตอบของคุณได้รับตัวเร่งแล้ว) แต่อาจยังมีโฮสต์บางตัวที่ใช้ PHP4.x