ob_get_length
می خواهی بدانی «بافر خروجی (Output Buffer)» الان چند است؟ با ob_get_length() طول محتوا را می گیری. توجه کن، طول بر حسب «بایت (Byte)» است، نه همیشه تعداد حروف.
تعریف ساده و کاربرد
ob_get_length() طول محتوای بالاترین بافر را برمی گرداند. بنابراین می فهمی قبل از ارسال، متن چقدر حجیم است. گاهی حروف چندبایتی دارند. پس تعداد حروف با بایت یکی نیست.
نمونه کد از منبع
اول بافر را شروع کن. سپس چیزی بنویس. بعد طول را بگیر و در پایان بافر را پاک کن.
<?php
ob_start();
echo "Hello World!";
$length = ob_get_length();
ob_end_clean();
echo "The contents of the buffer are $length characters long";
?>
گام های عملی برای اندازه گیری بافر
- با
ob_start()بافر خروجی را فعال کن. - با
echoمتن آزمایشی تولید کن. - با
ob_get_length()طول بایت ها را بگیر. - با
ob_end_clean()بافر را تمیز کن.
نکته: طول برحسب بایت است. بنابراین با حروف چندبایتی، اعداد متفاوت می شوند.
هشدار: اگر بافر فعال نباشد، مقدار نادرست یا تهی می گیری. همیشه قبلش ob_start() بزن.
پیوندهای داخلی مرتبط
- طول بافر خروجی توضیح همین تابع.
- ob_get_contents فقط دریافت، بدون پاک کردن.
- ob_get_clean دریافت و سپس پاک کردن.
- ob_flush ارسال محتوا بدون حذف بافر.
جمع بندی سریع
- طول بافر را به بایت برمی گرداند.
- با
ob_start()آغاز بافر ضروری است. - حروف چندبایتی طول را تغییر می دهند.
- پس از اندازه گیری، پاک سازی را فراموش نکن.