Anonim

Atsevišķās un dubultās pēdiņas PHP tiek apstrādātas nedaudz savādāk. Lasiet tālāk, lai redzētu atšķirības to novērtēšanā.

Atsevišķi citāti

Atsevišķām pēdiņām ir tendence parsēt lietas daudz burtiskā nozīmē. Piemēram, rīkojieties šādi:

$ tests = "BOOOM"; atbalss '$ tests'

Mainīgā nosaukuma iekļaušana pēdiņās netiek parsēta līdz tā faktiskajai vērtībai. Tālāk ir norādīts, kas faktiski izdrukāts, palaižot šo kā vienkāršu php programmu:

$ tests

Ir tikai 2 scenāriji, par kuriem domāju, kur faktiski tiek parsēta informācija vienā citētā virknē. Pirmkārt, lai parādītu vienu citētu rakstzīmi, pirms tā ir jābūt slīpsvītrām. Pretējā gadījumā tas tiks interpretēts kā jūsu virknes beigas. Otrkārt, lai parādītu slīpsvītru, pirms tā jāatspoguļo vēl viens slīpsvītra. Piemērs:

atbalss 'viens citāts: \' '; atbalss 'slīpsvītra: \\';

Double Citāti

Divkāršās pēdiņas parasti analizē lietas jūsu vietā. Kad tiek rādītas starp pēdiņām:

$ tests = "BOOOM"; atbalss "$ tests"

Tas izvada faktisko mainīgo vērtību:

BOOOM

Tagad reizēm jūs nonāksit scenārijā, kurā mainīgā nosaukums, kuru mēģināt izvadīt, dažu apkārtējo rakstzīmju dēļ nav pareizi parsēts.

$ tests = "BOOOM"; atbalss "$ pārbaudīts";

Kā jūs domājat, ko šeit iegūst? Atbilde ir nekas. PHP meklē mainīgo ar nosaukumu $ pārbaudīts, un, tā kā tas neeksistē, nekas netiek izvadīts. Pareizais veids, kā izvadīt vērtību, kurai seko “ed”, būtu:

$ tests = "BOOOM"; atbalss "{$ test} ed";

Iesaiņojot to cirtainās iekavās, tas ļauj PHP zināt, kur mainīgais sākas un apstājas, ļaujot tam pareizi novērtēt mainīgo.

Ātruma starpība

Es vadīju dažus vienkāršus etalonuzdevumu testus, lai novērtētu dažus atšķirību scenārijus, ātruma atšķirība starp 2 ir niecīga. Atsevišķās pēdiņas tika veiktas tik nedaudz ātrāk, jo nebija jāmeklē mainīgais un pēc tam jāatspoguļo vērtība, bet es nekad neesmu saskāries ar scenāriju, kurā tas pietiekami daudz izmainīja lietu. Izmantojiet to, kas atbilst jūsu pašreizējām vajadzībām.

Atšķirība starp vienreizēju un dubultu citātu php