Yii - पेज बनाएँ
अब हम एक बनाने जा रहे हैं “Hello world”आपके आवेदन में पेज। पेज बनाने के लिए, हमें एक एक्शन और एक दृश्य बनाना होगा।
नियंत्रकों में कार्रवाई की घोषणा की जाती है। अंतिम उपयोगकर्ता को किसी कार्रवाई का निष्पादन परिणाम प्राप्त होगा।
Step 1 - मौजूदा में बोलने की कार्रवाई की घोषणा करें SiteController, जो क्लास फाइल कंट्रोलर / में परिभाषित हैSiteController.php।
<?php
namespace app\controllers;
use Yii;
use yii\filters\AccessControl;
use yii\web\Controller;
use yii\filters\VerbFilter;
use app\models\LoginForm;
use app\models\ContactForm;
class SiteController extends Controller {
/* other code */
public function actionSpeak($message = "default message") { return $this->render("speak",['message' => $message]);
}
}
?>
हमने बोलने की क्रिया को एक विधि के रूप में परिभाषित किया है actionSpeak। Yii में, सभी क्रिया विधियाँ शब्द क्रिया के साथ उपसर्ग करती हैं। यह है कि फ्रेमवर्क एक्शन तरीकों को गैर-एक्शन वाले से अलग करता है। यदि एक एक्शन आईडी के लिए कई शब्दों की आवश्यकता होती है, तो उन्हें डैश द्वारा संक्षिप्त किया जाएगा। इसलिए, एक्शन आईडी ऐड-पोस्ट एक्शन विधि से मेल खाती हैactionAddPost।
ऊपर दिए गए कोड में, ‘out’ फ़ंक्शन एक GET पैरामीटर लेता है, $message। जिसे हम एक विधि भी कहते हैं‘render’एक दृश्य फ़ाइल प्रस्तुत करने के लिए जिसे कहा जाता है। हम संदेश पैरामीटर को दृश्य में पास करते हैं। रेंडरिंग परिणाम पूर्ण HTML पेज है।
Viewएक स्क्रिप्ट है जो एक प्रतिक्रिया की सामग्री उत्पन्न करती है। बोलने की क्रिया के लिए, हम एक बोल दृश्य बनाते हैं जो हमारे संदेश को प्रिंट करता है। जब रेंडर विधि को बुलाया जाता है, तो यह PHP फ़ाइल नामों के रूप में दिखता हैview/controllerID/vewName.php।
Step 2 - इसलिए, दृश्य / साइट फ़ोल्डर के अंदर एक फ़ाइल बनाई जाती है जिसे कहा जाता है speak.php निम्नलिखित कोड के साथ।
<?php
use yii\helpers\Html;
?>
<?php echo Html::encode($message); ?>
ध्यान दें कि हम HTML से बचने के लिए मुद्रण से पहले संदेश पैरामीटर को एनकोड करते हैं XSS हमला।
Step 3 - अपने वेब ब्राउजर में निम्न टाइप करें http://localhost:8080/index.php?r=site/speak&message=hello%20world।
आप निम्न विंडो देखेंगे -
‘r’URL में पैरामीटर रूट के लिए है। मार्ग का डिफ़ॉल्ट प्रारूप हैcontrollerID/actionID। हमारे मामले में, मार्ग स्थल / बोलने से हल हो जाएगाSiteController कक्षा और बोलने की क्रिया।