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的文件。
【YII开发第一个例子】以下是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开发第一个例子

文章图片
查看上面的快照, 输出显示Hello World。在URL中, 我们已要求提供message参数。
如果我们在U??RL中省略message参数, 那么我们的URL将是:
http://localhost/hello/frontend/web/index.php?r = site%2Fexample
并且我们的输出将仅为” Hello” 。
YII开发第一个例子

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

    推荐阅读