วิธีปิดการบัฟเฟอร์เอาต์พุต

สารบัญ:

วิธีปิดการบัฟเฟอร์เอาต์พุต
วิธีปิดการบัฟเฟอร์เอาต์พุต

วีดีโอ: วิธีปิดการบัฟเฟอร์เอาต์พุต

วีดีโอ: วิธีปิดการบัฟเฟอร์เอาต์พุต
วีดีโอ: How to Properly Buffer Your Amp’s FX Loop 2024, อาจ
Anonim

ในกระบวนการทำงาน php-scripts สามารถแสดงผลเมื่อสคริปต์ถูกเรียกใช้งาน หรือรวบรวมข้อมูล โดยรอการดำเนินการของสคริปต์ให้สมบูรณ์และเสร็จสิ้นสคริปต์ การเลือกหนึ่งในตัวเลือกเหล่านี้ขึ้นอยู่กับค่าที่กำหนดในการตั้งค่าตัวแปล php ให้กับตัวแปรที่รับผิดชอบในการบัฟเฟอร์เอาต์พุตข้อมูล มีหลายวิธีในการเปลี่ยนแปลง

วิธีปิดการบัฟเฟอร์เอาต์พุต
วิธีปิดการบัฟเฟอร์เอาต์พุต

คำแนะนำ

ขั้นตอนที่ 1

หากคุณต้องการปิดใช้งานการบัฟเฟอร์เอาต์พุตสำหรับสคริปต์ php ทั้งหมดที่ทำงานบนเซิร์ฟเวอร์หรือบนไซต์ วิธีที่ถูกต้องที่สุดในการทำเช่นนี้คือการใช้ไฟล์ php.ini เมื่อเปิดใช้แต่ละสคริปต์ ล่ามภาษา php จะอ่านการตั้งค่าจากไฟล์การกำหนดค่านี้ ดังนั้นการวางคำสั่งในนั้นเพื่อปิดใช้งานการบัฟเฟอร์เอาต์พุตของเอาต์พุตของสคริปต์จึงเป็นทางออกที่ดีที่สุด เปิดไฟล์ในโปรแกรมแก้ไขข้อความและใช้กล่องโต้ตอบการค้นหาเพื่อค้นหาคำสั่งที่เรียกว่า output_buffering ค่าของมันสามารถเป็นได้ทั้งจำนวนเต็มหรือตัวแปรเชิงตรรกะ (เปิดหรือปิด) ดังนั้นแทนที่จะป้อนค่าดีฟอลต์ ให้ป้อน Off หรือ 0 หากคำสั่งนี้ไม่อยู่ในไฟล์คอนฟิกูเรชัน ให้เพิ่มบรรทัดเพิ่มเติมที่ส่วนท้ายของรายการ:

output_buffering = ปิด

ขั้นตอนที่ 2

หากคุณต้องการปิดใช้งานการบัฟเฟอร์เอาต์พุตสำหรับสคริปต์ของโฟลเดอร์แยกต่างหากหรือกลุ่มของโฟลเดอร์ย่อย ควรทำสิ่งนี้ผ่านไฟล์ htaccess ค้นหาในไดเร็กทอรีที่ต้องการและเปิดในโปรแกรมแก้ไขข้อความ หากยังไม่มีไฟล์ดังกล่าว ให้สร้างไฟล์ใหม่ คำสั่งที่ควรเพิ่มนั้นคล้ายกับที่อธิบายไว้ในขั้นตอนก่อนหน้า แต่ก่อนหน้านั้น คุณต้องทำเครื่องหมายว่านี่เป็นหนึ่งในการตั้งค่า php ทั้งบรรทัดควรมีลักษณะดังนี้:

php_flag output_buffering ปิด

วางไฟล์ htaccess ที่สร้างขึ้นในโฟลเดอร์บนสุดของลำดับชั้นของไดเร็กทอรีที่คำสั่งจะถูกดำเนินการ

ขั้นตอนที่ 3

หากต้องการปิดใช้งานการบัฟเฟอร์ในสคริปต์ php ตัวเดียว ให้ใช้หนึ่งในฟังก์ชันในตัวของภาษานี้ ob_get_flush () ส่งคืนเนื้อหาปัจจุบันของบัฟเฟอร์ จากนั้นจึงทำให้เป็นศูนย์และปิดการบัฟเฟอร์เอาต์พุต ob_end_flush () ทำเช่นเดียวกัน แต่ไม่ส่งคืนเนื้อหาปัจจุบันของบัฟเฟอร์ไปยังตัวแปรที่เรียกมัน แต่ส่งไปยังอุปกรณ์ส่งออก Ob_end_clean () จะลบข้อมูลปัจจุบันก่อนที่จะปิดบัฟเฟอร์ เมื่อใช้ฟังก์ชันเหล่านี้ อย่าลืมเปิดบัฟเฟอร์อีกครั้ง เนื่องจากฟังก์ชัน ob_start () มีไว้สำหรับสิ่งนี้