Yii-创建页面

现在,我们将在您的应用程序中创建一个“ Hello world”页面。要创建页面,我们必须创建一个动作和一个视图。

在控制器中声明动作。最终用户将收到动作的执行结果。

步骤1-在现有的SiteController中声明语音操作,该操作在类文件controllers / 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中,所有操作方法均以“操作”一词作为前缀。这就是框架如何区分行动方法与非行动方法的方式。如果一个动作ID需要多个单词,那么它们将由短划线连接起来。因此,动作ID添加后与动作方法actionAddPost相对应。

在上面给出的代码中,“ out”函数采用GET参数$ message。我们还调用了一个名为“ render”的方法来渲染名为“ speak 的视图文件。我们将message参数传递给视图。渲染结果是一个完整的HTML页面。

视图是生成响应内容的脚本。对于语音操作,我们创建一个语音视图以打印我们的消息。调用render方法时,它将查找一个名为view / controllerID / vewName.php的PHP文件。

步骤2-因此,在views / site文件夹中,使用以下代码创建一个名为speak.php的文件。

<?php 
   use yii\helpers\Html; 
?> 
<?php echo Html::encode($message); ?> 

请注意,我们在打印之前对message参数进行HTML编码,以避免XSS攻击。

步骤3-在Web浏览器中输入以下内容http:// localhost:8080 / index.php?r = site / speak&message = hello%20world

您将看到以下窗口:

Yii-创建页面

URL中的“ r”参数代表路由。路由的默认格式为controllerID / actionID。在我们的例子中,路由站点/语音将由SiteController类和语音操作来解决。

作者:terry,如若转载,请注明出处:https://www.web176.com/yii/607.html

(0)
打赏 支付宝 支付宝 微信 微信
terryterry
上一篇 2020年10月26日 下午5:39
下一篇 2020年10月26日 下午5:42

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注