الفرق بين ()htmlentities و ()htmlspecialchars في لغة PHP

 




في هذه المقالة ، سنرى ما هي وظيفة ()htmlentities و ()htmlspecialchars

الدالة ()htmlentities:


هي دالة مضمنة في PHP تُستخدم لتحويل جميع الأحرف التي تنطبق على كيانات HTML. تقوم هذه الوظيفة بتحويل جميع الأحرف التي تنطبق على كيانات HTML ولها الشكل العام التالي:

string htmlspecialchars( $string, $flags, $encoding, $double_encode )

تقبل هذه الوظيفة أربعة بارامترات  وترجع السلسلة التي تم تشفيرها وإليك دلالة هذه البارامترات:

 $string: يستخدم هذا البارامتر للاحتفاظ بسلسلة الإدخال.

$flags: يستخدم هذا البارامتر لتحديد كيفية التعامل مع علامات الاقتباس.

$encoding: هو وسيط اختياري يحدد الترميز المستخدم عند تحويل الأحرف، إذا لم يتم تقديم الترميز ، فسيتم تحويله وفقًا لإصدار PHP الافتراضي.

$double_encode: إذا تم إيقاف تشغيل double_encode، فلن تقوم PHP بتشفير كيانات HTML الحالية، الافتراضي هو تحويل كل شيء.

مثال: يستخدم هذا المثال الدالة ()htmlentities لتحويل جميع الأحرف التي تنطبق على كيانات HTML.


<?php

  // String convertible to htmlentities

  $str = '<a href="https://waelaminit.blogspot.com">WAELIT</a>';

  // It will convert htmlentities and print them

  echo htmlentities( $str );

?>

الناتج هو

<a href="https://waelaminit.blogspot.com">WAELIT</a>


الدالة ()htmlspecialchars:

هي دالة مضمنة في PHP تُستخدم لتحويل جميع الأحرف المحددة مسبقًا إلى كيانات HTML، ولها الشكل العام التالي:

string htmlspecialchars( $string, $flags, $encoding, $double_encode )


تعيد هذه الدالة السلسلة المحولة، إذا كان هناك سلسلة إدخال غير صالحة  فسيتم إرجاع سلسلة فارغة، وتأخذ 4 بارامترات وفيما يلي دلالة هذه البارامترات: 


$string: تستخدم هذه المعلمة للاحتفاظ بسلسلة الإدخال.

$flags: يحدد كيفية التعامل مع علامات الاقتباس.

$encoding: هو وسيط اختياري يحدد الترميز المستخدم عند تحويل الأحرف، إذا لم يتم تقديم الترميز، فسيتم تحويله وفقًا لإصدار PHP الافتراضي.

$double_encode: إذا تم إيقاف تشغيل double_encode، فلن تقوم PHP بتشفير كيانات HTML الحالية، الافتراضي هو تحويل كل شيء.


مثال: يستخدم هذا المثال الدالة ()htmlspecialchars لتحويل كل الأحرف المحددة مسبقًا إلى كيانات HTML.

<?php 

  // String to be converted

  $str = ' "https://waelaminit.blogspot.com/"  BLOG OF WAEL AMIN';

  // Converts double and single quotes

  echo htmlspecialchars($str, ENT_QUOTES);

?>

Output:

"https://waelaminit.blogspot.com/"  BLOG OF WAEL AMIN


الفرق بين دالة ()htmlentities و ()htmlspecialchars:

 الاختلاف الوحيد بين هذه الوظيفة هو أن دالة ()htmlspecialchars تحول الأحرف الخاصة إلى HTML 

بينما تقوم دالة ()htmlentities بتحويل جميع الأحرف القابلة للتطبيق إلى HTML.






Next Post Previous Post
No Comment
Add Comment
comment url