የ PHP 8.2 የአልፋ ሙከራ ተጀምሯል።

የPHP 8.2 ፕሮግራሚንግ ቋንቋ የመጀመሪያ አልፋ ቅርንጫፍ ቀርቧል። ልቀቱ ለኖቬምበር 24 ተይዞለታል። በ PHP 8.2 ውስጥ ለሙከራ የቀረቡ ወይም ለመተግበር የታቀዱ ዋናዎቹ ፈጠራዎች፡-

  • የተለዩ ዓይነቶች "ሐሰት" እና "ኑል" ተጨምረዋል, ለምሳሌ የማጠናቀቂያ ምልክትን በስህተት ወይም ባዶ እሴት ለመመለስ ጥቅም ላይ ሊውል ይችላል. ከዚህ ቀደም "ሐሰት" እና "ኑል" ከሌሎች ዓይነቶች (ለምሳሌ "string | false") ጋር ብቻ ጥቅም ላይ ሊውሉ ይችላሉ, አሁን ግን ለየብቻ ጥቅም ላይ ሊውሉ ይችላሉ: function alwaysFalse(): false { return false; }
  • ክፍልን እንደ ተነባቢ-ብቻ ምልክት የማድረግ ችሎታ ታክሏል። በእንደዚህ ዓይነት ክፍሎች ውስጥ ያሉ ንብረቶች አንድ ጊዜ ብቻ ሊዘጋጁ ይችላሉ, ከዚያ በኋላ ለለውጥ አይገኙም. ከዚህ ቀደም የነጠላ ክፍል ንብረቶች ተነባቢ-ብቻ ምልክት ሊደረግባቸው ይችላል፣ አሁን ግን ይህንን ሁነታ ለሁሉም ክፍል ንብረቶች በአንድ ጊዜ ማብራት ይችላሉ። በክፍል ደረጃ የ"ተነባቢ ብቻ" ባንዲራ መግለጽ እንዲሁም ተለዋዋጭ ንብረቶችን ወደ ክፍል መጨመር ያግዳል። ተነባቢ ብቻ ክፍል ልጥፍ {የህዝብ ተግባር __ኮንስትራክሽን(የወል ሕብረቁምፊ $ ርዕስ፣ ይፋዊ ደራሲ $ደራሲ፣) {} } $post = አዲስ ልጥፍ(/* … */); $post-> ያልታወቀ = 'ስህተት'; // ስህተት፡ ተለዋዋጭ ንብረት መፍጠር አልተቻለም ፖስት::$ ያልታወቀ
  • በክፍል ውስጥ ንብረቶችን በተለዋዋጭ የመፍጠር ችሎታ ተቋርጧል (እንደ ከላይ በምሳሌው ላይ እንደ "ድህረ-> ያልታወቀ")። በPHP 9.0 ውስጥ በመጀመሪያ ክፍል ውስጥ ያልተገለጹ ንብረቶችን መድረስ ስህተትን ያስከትላል (ErrorException)። ንብረቶችን ለመፍጠር __get እና __set ስልቶችን የሚያቀርቡ ክፍሎች ወይም በ stdClass ውስጥ ያሉ ተለዋዋጭ ንብረቶች ሳይለወጡ መስራታቸውን ይቀጥላሉ፣ ገንቢውን ከተደበቁ ስህተቶች ለመጠበቅ ከሌሉ ንብረቶች ጋር ስውር ስራ ብቻ ይቆማል። የድሮው ኮድ እንዲሰራ ለማድረግ የ"#[AllowDynamicProperties]" ባህሪ ቀርቧል፣ ይህም ተለዋዋጭ ባህሪያትን መጠቀም ያስችላል።
  • በስህተት ጊዜ ሚስጥራዊነት ያላቸው ቅንብሮችን በተከመረ የክትትል ውፅዓት ውስጥ የማጣራት ችሎታ ተሰጥቷል። ስለሚከሰቱ ስህተቶች መረጃ በራስ-ሰር ችግሮችን ለሚከታተሉ እና ገንቢዎችን ለሚያሳውቁ የሶስተኛ ወገን አገልግሎቶች ሲላክ የተወሰነ መረጃ መቁረጥ ሊያስፈልግ ይችላል። ለምሳሌ የተጠቃሚ ስሞችን፣ የይለፍ ቃሎችን እና የአካባቢ ተለዋዋጮችን የሚያካትቱ መለኪያዎችን ከክትትሉ ማግለል ይችላሉ። የተግባር ሙከራ($foo፣ #[\ SensitiveParameter] $password፣ $baz) {አዲስ ልዩ ('ስህተት') መጣል); } ሙከራ ('foo'፣ 'password'፣ 'baz'); ገዳይ ስህተት፡ ያልተያዘ ልዩ፡ ስህተት በፈተና ውስጥ።php፡8 ቁልል ዱካ፡ #0 test.php(11)፡ ሙከራ('foo'፣ Object(SensitiveParameterValue)፣ 'baz') #1 {ዋና} በ test.php ውስጥ ተጥሏል። በመስመር ላይ 8
  • «${var}» እና ${(var)}» አባባሎችን በመጠቀም ተለዋዋጭ እሴቶችን ወደ ሕብረቁምፊዎች የመተካት ችሎታው ተቋርጧል። በተለምዶ ጥቅም ላይ ለሚውሉ "{$var}" እና "$var" ምትክዎች ድጋፍ ተጠብቆ ቆይቷል። ለምሳሌ፡ "ጤና ይስጥልኝ {$world}"; እሺ "ሄሎ $አለም"; እሺ "ሰላም ${አለም}"; የተቋረጠ፡ ${}ን በሕብረቁምፊዎች መጠቀም ተቋርጧል
  • በ"call_user_func($callable)" በኩል ሊጠሩ የሚችሉ ከፊል የሚደገፉ ጥሪዎች ተቋርጠዋል፣ ነገር ግን በ"$callable()"፡"ራስ::ዘዴ""ወላጅ::ዘዴ" "ስታቲክ ::" በሚለው ቅጽ መደወልን አይደግፉም። ዘዴ" ["እራስ"፣ "ዘዴ"] ["ወላጅ"፣ "ዘዴ"] ["ስታቲክ"፣ "ዘዴ"] ["ፉ"፣ "ባር:: ዘዴ"] [አዲስ ፎ፣ "ባር::ዘዴ" "]
  • የተተገበረ የአካባቢ-ገለልተኛ ጉዳይ ልወጣ። እንደ strtolower () እና strtoupper() ያሉ ተግባራት አሁን ሁልጊዜ በASCII ክልል ውስጥ ያሉትን የገጸ-ባህሪያት ሁኔታ ይለውጣሉ፣ ልክ አካባቢውን ወደ "ሐ" ሲያቀናብሩ።

ምንጭ: opennet.ru

አስተያየት ያክሉ