KNOLEDGEBASE · PHP

PHP ઘાતક ભૂલઃ કર્લી કૌંસ સાથે એરે અને સ્ટ્રિંગ ઓફસેટ એક્સેસ વાક્યરચના હવે આધારભૂત નથી

છેલ્લું સુધારેલ 2025-06-07

PHP એક લોકપ્રિય સર્વર-સાઇડ સ્ક્રિપ્ટીંગ ભાષા છે જેનો વેબ વિકાસ માટે વ્યાપકપણે ઉપયોગ થાય છે. જો કે, જ્યારે PHP 8.1.17 પર અપગ્રેડ કરવામાં આવે છે, ત્યારે વિકાસકર્તાઓને એક ભૂલ સંદેશનો સામનો કરવો પડી શકે છે જે વાંચે છે, "કર્લી કૌંસ સાથે એરે અને સ્ટ્રિંગ ઓફસેટ એક્સેસ વાક્યરચના હવે સપોર્ટેડ નથી". આ લેખમાં, અમે આ ભૂલના કારણોને શોધી કાઢીશું અને તેના માટે ઉપાયો અને સુધારાઓ આપીશું.

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

ભૂલના કારણો

એરે અને સ્ટ્રિંગ ઓફસેટને ઍક્સેસ કરવા માટે કર્લી બ્રેસ વાક્યરચનાને PHP 7.4 માં અવગણવામાં આવી છે અને સંપૂર્ણપણે PHP 8.1.17 માં દૂર કરવામાં આવી છે. આનો અર્થ એ છે કે જો તમારો કોડ આ વાક્યરચનાનો ઉપયોગ કરે છે, તો તે PHP 8.1.17 પર ચલાવતી વખતે ભૂલ કરશે. આ ફેરફારનું કારણ એ છે કે કર્લી બ્રેસ વાક્યરચના ચોરસ કૌંસ વાક્યરચના કરતાં ઓછી વાંચી શકાય તેવી અને ઓછી સાહજિક છે, જે PHP માં એરે અને સ્ટ્રિંગ ઓફસેટને ઍક્સેસ કરવાની પસંદગીની રીત છે.

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

ઉપાયો

આ ભૂલને ટાળવા માટે, વિકાસકર્તાઓએ એરે અને સ્ટ્રિંગ ઓફસેટને ઍક્સેસ કરવા માટે કર્લી બ્રેસ વાક્યરચનાનો ઉપયોગ કરવાનું ટાળવું જોઈએ. તેના બદલે, તેઓએ ચોરસ કૌંસ વાક્યરચનાનો ઉપયોગ કરવો જોઈએ. આ માત્ર PHP 8.1.17 માં પસંદગીનું વાક્યરચના નથી, પરંતુ તે વધુ વાંચી શકાય તેવું અને સમજવામાં સરળ પણ છે.

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

અહીં કોડનું એક ઉદાહરણ છે જે કર્લી બ્રેસ વાક્યરચનાનો ઉપયોગ કરે છેઃ

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
$array = ['foo', 'bar'];
echo $array{'0'};

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

અને અહીં ચોરસ કૌંસ વાક્યરચનાનો ઉપયોગ કરીને સમાન કોડ છેઃ

$array = ['foo', 'bar']; 
echo $array[0];

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

સુધારાઓ

જો તમારી પાસે કોડ છે જે કર્લી બ્રેસ વાક્યરચનાનો ઉપયોગ કરે છે, તો તમારે તેને ચોરસ કૌંસ વાક્યરચનાનો ઉપયોગ કરવા માટે સુધારવાની જરૂર પડશે. આ તમારા કોડબેઝના કદના આધારે સમય માંગી લેતી પ્રક્રિયા હોઈ શકે છે.


આ ભૂલને સુધારવાનો સૌથી સરળ રસ્તો એ છે કે સ્વયંચાલિત સાધનનો ઉપયોગ કરવો જેમ કે રેક્ટર અથવા PHP-CS-Fixerઆ સાધનો સાચો વાક્યરચના વાપરવા માટે તમારા કોડમાં આપમેળે ફેરફાર કરી શકે છે, જેનાથી તમારો સમય અને પ્રયત્ન બચી શકે છે.

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

સારાંશ

જ્યારે વિકાસકર્તાઓ PHP 8.1.17 માં કર્લી કૌંસનો ઉપયોગ કરીને એરે અને સ્ટ્રિંગ ઓફસેટને ઍક્સેસ કરવાનો પ્રયાસ કરે છે ત્યારે "કર્લી કૌંસ સાથે એરે અને સ્ટ્રિંગ ઓફસેટ ઍક્સેસ વાક્યરચના હવે સપોર્ટેડ નથી" ભૂલ થાય છે. આ વાક્યરચના PHP 7.4 માં અવગણવામાં આવી છે અને PHP 8.1.17 માં સંપૂર્ણપણે દૂર કરવામાં આવી છે. આ ભૂલને ટાળવા માટે, વિકાસકર્તાઓએ તેના બદલે ચોરસ કૌંસ વાક્યરચનાનો ઉપયોગ કરવો જોઈએ.

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

જો તમારી પાસે કોડ છે જે કર્લી બ્રેસ વાક્યરચનાનો ઉપયોગ કરે છે, તો તમારે તેને ચોરસ કૌંસ વાક્યરચનાનો ઉપયોગ કરવા માટે સુધારવાની જરૂર પડશે. રેક્ટર અને PHP-CS-Fixer જેવા સ્વચાલિત સાધનો તમને આ ફેરફાર ઝડપથી અને સરળતાથી કરવામાં મદદ કરી શકે છે.

તમામ નોલેજબેઝ લેખો

અમને જણાવો કે શું રહેવાનું છે.

A short conversation with an engineer. No quote-bot, no callback queue.