Anonim

ציטוטים בודדים וציטוטים כפולים מטופלים מעט שונים ב- PHP. המשך לקרוא כדי לראות את ההבדלים באופן הערכתם.

ציטוטים בודדים

ציטוטים יחידים נוטים לנתח דברים במובן המילולי הרבה יותר. לדוגמה, קח את הדברים הבאים:

מבחן $ = "BOOOM"; הד 'מבחן $'

שם המשתנה, כאשר הוא מכניס את הציטוטים היחידים, אינו מנותח לערכו בפועל. להלן מה שמודפס למעשה מהפעלת זה כתוכנית PHP פשוטה:

מבחן $

יש רק שני תרחישים שאני יכול לחשוב עליהם שבהם המידע באמת מנותח בתוך מחרוזת מצוטטת אחת. ראשית, כדי להציג תו מצוטט בודד, יש להקדים אותו קצב אחורי. אחרת זה יתפרש כסוף המחרוזת שלך. שנית, כדי להציג קו אחורי, יש להקדים אותו שובב אחורי אחר. דוגמא:

הד 'ציטוט בודד: \' '; הד 'התפשטות: \\';

ציטוטים כפולים

ציטוטים כפולים נוטים לנתח את העניינים עבורך. כאשר פועלים בין ציטוטים כפולים:

מבחן $ = "BOOOM"; הד "מבחן $"

זה מוציא את הערך המשתנה בפועל:

בום

כעת, מדי פעם תיתקל בתרחיש בו שם המשתנה שאתה מנסה להוציא גורם לא להיות מנותח נכון בגלל כמה תווים שמסביב.

מבחן $ = "BOOOM"; הד "$ נבדק";

מה לדעתך מקבל כאן תפוקה? התשובה היא כלום. PHP מחפש משתנה בשם $ שנבדק, ומכיוון שהוא לא קיים, שום דבר לא פלט. הדרך הנכונה להפיק את הערך ואחריו 'ed' תהיה:

מבחן $ = "BOOOM"; הד "{$ test} ed";

על ידי עטוף אותו בתוך הסוגריים המתולתלים, הוא מאפשר ל- PHP לדעת היכן המשתנה מתחיל ועוצר, ומאפשר לו להעריך כראוי את המשתנה.

הבדל מהירות

ערכתי כמה בדיקות מדד פשוטות כדי להעריך כמה תרחישי הבדל, ההבדל במהירות בין השניים זניח. ציטוטים יחידים היו כל כך מעט מהירים יותר בגלל העובדה שהיא לא חייבת לחפש משתנה ואז לנתח את הערך, אבל מעולם לא נתקלתי בתרחיש בו זה עשה מספיק הבדל משנה. השתמש במי שמתאים לצרכים הנוכחיים שלך.

ההבדל בין ציטוט יחיד לציטוט כפול ב- php