个性化阅读
专注于IT技术分析

YII开发第一个例子

安装Yii之后, 你可以开发一个可以通过URL http://hostname/basic/web/index.php或http://hostname/index.php进行访问的应用程序, 具体取决于你的配置。

我们将在Yii2上运行Hello World的基本示例。

Step1在控制器中声明动作

我们正在创建一个名为example的动作。该操作将从请求中读取消息参数, 并显示该消息。

动作始终在Controllers文件中声明。在这里, 我们不会创建新文件, 而是在现有的SiteController.php中声明此操作。

以下是SiteController.php文件中的起始代码。

<?php 
namespace frontend\controllers; 

use Yii; 
use yii\base\InvalidParamException; 
use yii\web\BadRequestHttpException; 
use yii\web\Controller; 
use yii\filters\VerbFilter; 
use yii\filters\AccessControl; 
use common\models\LoginForm; 
use frontend\models\PasswordResetRequestForm; 
use frontend\models\ResetPasswordForm; 
use frontend\models\SignupForm; 
use frontend\models\ContactForm; 

/** 
 * Site controller 
 */ 
class SiteController extends Controller 
{ 
    /** 
     * @inheritdoc 
     */ 

    public function actionExample($message = 'Hello') 
    { 
        return $this->render('example', ['message' => $message]); 
    }

看上面的代码, 示例动作被定义为一个名为actionExample的方法。前缀动作用于区分动作方法和非动作方法。前缀动作之后的名称表示动作的ID。

在这里, 我们使用参数$ message, 其值为” Hello”。如果发送的请求带有URL中的message参数, 但其值不同, 例如” Hyii”, 则此值将显示在输出中。如果在URL中未请求任何消息参数请求, 则将打印” Hello”。

调用函数render()以显示名为example.php的视图文件。该结果将在浏览器中显示给最终用户。

步骤1创建视图文件

View文件夹基本上包含响应内容, 该响应内容将根据用户的请求传递给用户。在此示例中, 我们在视图/站点文件夹中创建了一个名为example.php的文件。

以下是example.php文件的代码。

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

看上面的代码, 在打印消息参数之前先对其进行HTML编码, 以防止XSS攻击。

Step1在浏览器上运行

使用以下URL访问页面:

http://localhost/hello/frontend/web/index.php?r = site%2Fexample&message = Hello + World

输出如下所示。

YII运行结果1

查看上面的快照, 输出显示Hello World。在URL中, 我们已要求提供message参数。

如果我们在U​​RL中省略message参数, 那么我们的URL将是:

http://localhost/hello/frontend/web/index.php?r = site%2Fexample

并且我们的输出将仅为” Hello”。

YII运行结果2

在URL中, 我们提到了r参数。该r表示路由。格式为ControllerID / AtionID。在此示例中, 路线表示站点/示例。

赞(0)
未经允许不得转载:srcmini » YII开发第一个例子

评论 抢沙发

评论前必须登录!