الدالة fgetss()
في PHP
(PHP 4, PHP 5, PHP 7)
تَجلُب الدالة fgetss()
سطرًا واحدًا من ملف معيَّن وتزيل وسوم HTML من النصِّ الذي تقرؤه.
الوصف
string fgetss ( resource $handle [, int $length [, string$allowable_tags ]] )
تشبه هذه الدالة تمامًا الدالة fgets()
باستثناء أنَّها تحاول إزالة بايتات العدم (NULL)، ووسوم HTML، ووسوم PHP التي تعثر عليها أثناء قراءتها للنص.
المعاملات
handle
مؤشِّر (pointer) يشير إلى ملف. يجب أن يكون سليمًا، ويشير إلى ملف فُتح بطريقة صحيحة باستعمال الدالة fopen()
أو الدالة fsockopen() ولم يُغلق بعد باستعمال الدالة fclose().
length
طول البيانات المراد إعادتها.
allowable_tags
معامل اختياري. يحدِّد الوسوم المسموح بتواجدها أي التي لن تُحذف من النص. راجع صفحة الدالة strip_tags()
للمزيد من المعلومات المتعلقة بهذا المعامل.
القيم المعادة
تُعاد سلسلة نصيَّة ذات الطول length - 1
بايت التي قُرئت من الملف الذي يشير إليه المورد handle
. إن لم يعد هنالك بيانات تُقرأ من الملف المشار إليه، فستُعاد القيمة FALSE
.
إن حصل أي خطأ، فستُعاد القيمة FALSE
.
أمثلة
المثال 1: استعمال الدالة fgetss()
لقراءة كلِّ سطر على حدة من أسطر ملف PHP
<?php
$str = <<<EOD
<html><body>
<p>Welcome! Today is the <?php echo(date('jS')); ?> of <?= date('F'); ?>.</p>
</body></html>
Text outside of the HTML block.
EOD;
file_put_contents('sample.php', $str);
$handle = @fopen("sample.php", "r");
if ($handle) {
while (!feof($handle)) {
$buffer = fgetss($handle, 4096);
echo $buffer;
}
fclose($handle);
}
?>
سيُظهر المثال السابق النتيجة التالية:
Welcome! Today is the of .
Text outside of the HTML block.
ملاحظات
إن لم تتعرَّف PHP على نهاية السطر عند قراءة ملفات موجودة على نظام Macintosh أو أُنشأت باستعماله، ففعِّل خيار auto_detect_line_endings
من ضبط التشغيل (runtime configuration) إذ سيساعد ذلك على حلِّ المشكلة.
انظر أيضًا
- الدالة
fopen()
: تفتح ملفًا أو عنوان URL. - الدالة
popen()
: تفتح عمليَّة وتشير إليها بمؤشر شبيه بمؤشر ملف. - الدالة
fsockopen()
: تفتح اتصالًا بالإنترنت أو بمقبس نطاق يونكس (Unix domain socket). - الدالة
fgets()
: تجلب سطرًا من ملف. - الدالة
strip_tags()
: تزيل وسوم HTML ووسوم PHP من سلسلة نصيَّة.