mirror of
https://github.com/yiisoft/yii2.git
synced 2025-11-23 18:18:21 +08:00
tranlation_to_uzbek
This commit is contained in:
@@ -30,9 +30,9 @@ Quyida PHP ning asosiy o'zgarishlari keltirilgan:
|
||||
- Massivlar uchun qisqa sintaksisni qo'llash: `[...elementlar...]` ni `array(...элементы...)` o'rniga;
|
||||
- Qisqartirilgan teglarni qo'llash `<?=` ko'rinish fayllarida chiqarish uchun.
|
||||
PHP 5.4 talqinida ushbu imkoniyatni hech qanday sozlashlarsiz qo'llash mumkin;
|
||||
- [SPL ning klasslari va interfeyslari](http://php.net/manual/ru/book.spl.php);
|
||||
- [SPL ning klaslari va interfeyslari](http://php.net/manual/ru/book.spl.php);
|
||||
- [Kechroq statik bog'lash (LSB)](http://php.net/manual/ru/language.oop5.late-static-bindings.php);
|
||||
- [Sana va vaqt uchun klasslar](http://php.net/manual/ru/book.datetime.php);
|
||||
- [Sana va vaqt uchun klaslar](http://php.net/manual/ru/book.datetime.php);
|
||||
- [Treytlar](http://php.net/manual/ru/language.oop5.traits.php);
|
||||
- [Xalqarolashtirish (Intl)](http://php.net/manual/ru/book.intl.php); Xalqarolashtirish imkoniyatlaridan foydalanish maqsadida Yii 2.0 PHP ning `intl` kengaytmasini ishlatadi.
|
||||
|
||||
@@ -41,10 +41,56 @@ Nomlar sohasi
|
||||
-------------
|
||||
|
||||
Yii 2.0 ning asosiy o'zgarishlaridan biri bu nomlar sohasi hisoblanadi. Freymvorkning deyarli har bir sinfi nomlar sohasida joylashgan, masalan, `yii\web\Request`.
|
||||
"C" qo'shimchasi endi klasslar nomlarida ishlatilmaydi.
|
||||
Klasslarni nomlash kelishuvi direktoriyalar strukturasiga asoslanilgan. Masalan, `yii\web\Request` ushbu yozuv klassning yii freymvork direktoriyasidagi web/Request.php faylida joylashganini anglatadi.
|
||||
(Yii ning klasslarni yuklovchisi evaziga siz freymvork klasslarini hech qanday vositachisiz boglab qo'yishingiz mumkin).
|
||||
"C" qo'shimchasi endi klaslar nomlarida ishlatilmaydi.
|
||||
Klaslarni nomlash kelishuvi direktoriyalar strukturasiga asoslanilgan. Masalan, `yii\web\Request` ushbu yozuv klasning yii freymvork direktoriyasidagi web/Request.php faylida joylashganini anglatadi.
|
||||
(Yii ning klaslarni yuklovchisi evaziga siz freymvork klaslarini hech qanday vositachisiz boglab qo'yishingiz mumkin).
|
||||
|
||||
|
||||
Komponent va obekt
|
||||
------------------
|
||||
|
||||
Yii 2.0 da 1.1 dagi `CComponent` klas ikkita klasga ajratilgan: [[yii\base\Object]] va [[yii\base\Component]].
|
||||
[[yii\base\Object|Object]] klas oddiy asos klas bo'lib xususiyatlar uchun [getter va setter](concept-properties.md) larni ishlatishga imkon beradi.
|
||||
[[yii\base\Component|Component]] klas [[yii\base\Object|Object]] klasdan voris bo'lib [xodisalar](concept-events.md) va
|
||||
[o'zini tutish](concept-behaviors.md) larni qo'llab quvvatlaydi.
|
||||
|
||||
Agar sizni klasingizga xodisalar funksiyalari yoki o'zini tutishlar kerak bo'lmasa asos klas sifatida [[yii\base\Object|Object]] ni qo'llashingiz mumkin. Ushbu holat asosan asos strukturali klaslar yaratilayotgan vaqtda yuz beradi.
|
||||
|
||||
|
||||
Obekt sozlashlari
|
||||
-----------------
|
||||
|
||||
[[yii\base\Object|Object]] klas obektlarni sozlashni yagona usulini tashkillashtiradi. Ixtiyoriy [[yii\base\Object|Object]] ga voris bo'lgan klas (agar kerak bo'lsa) o'zini sozlashi uchun quyidagi ko'rinishda o'ziga konstruktor yaratishi mumkin:
|
||||
|
||||
```php
|
||||
class MyClass extends \yii\base\Object
|
||||
{
|
||||
public function __construct($param1, $param2, $config = [])
|
||||
{
|
||||
// ... sozlashlar qo'llanilishidan oldin initsializatsiyalash (e'lon qilish va qiymatlash)
|
||||
|
||||
parent::__construct($config);
|
||||
}
|
||||
|
||||
public function init()
|
||||
{
|
||||
parent::init();
|
||||
|
||||
// ... sozlashlar qo'llanilganidan keyin initsializatsiyalash
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
Yuqoridagi misolda oxirgi parametr obekt xususiyatlarini qiymatlovchi sozlashlar massivi ya'ni kalit-qiymat formatidagi juftlikdan iborat bo'lishi kerak. Siz sozlashlar qo'llanilganidan keyin initsializatsiya ishini amalga oshirish uchun oldindan [[yii\base\Object::init()|init()]] metod yaratib qo'yishingiz mumkin.
|
||||
|
||||
Ushbu kelishuvga asoslanib siz sozlash massivi yordamida yangi obektlarni yaratish va sozlashingiz mumkin:
|
||||
|
||||
```php
|
||||
$object = Yii::createObject([
|
||||
'class' => 'MyClass',
|
||||
'property1' => 'abc',
|
||||
'property2' => 'cde',
|
||||
], [$param1, $param2]);
|
||||
```
|
||||
|
||||
Sozlashlar haqidagi batafsil ma'lumotlar [Obektlarni sozlash](concept-configurations.md) bo'limida keltirilgan.
|
||||
|
||||
Reference in New Issue
Block a user