首頁  >  文章  >  php框架  >  使用Yii框架創建租屋網站

使用Yii框架創建租屋網站

WBOY
WBOY原創
2023-06-21 15:06:13990瀏覽

作為當下最受歡迎的PHP框架之一,Yii框架擁有高效能、高擴充性、高安全性等優勢,越來越多的開發者選擇使用Yii框架開發各種類型的應用。本文就介紹如何使用Yii框架建立一個租屋網站。

一、環境配置

使用Yii框架建立租屋網站,首先需要安裝必要的環境與工具:

  1. PHP環境:需要PHP5.4以上版本;
  2. 資料庫:本範例使用MySQL資料庫;
  3. 伺服器:本範例使用Apache伺服器;
  4. Yii框架:下載並解壓縮Yii框架到web伺服器目錄。

二、建立資料庫

在MySQL中建立一個名為「house_rental」的資料庫,其中包含以下表格:

  1. 房屋資訊表( house_info):儲存房屋信息,包括房屋ID、地址、大小、價格等資訊;
  2. 租戶資訊表(tenant_info):儲存租戶信息,包括租戶ID、姓名、聯絡資訊等資訊;
  3. 訂單資訊表(order_info):儲存訂單的信息,包括訂單ID、房屋ID、租戶ID、租房時間、訂單狀態等資訊。

三、建立Yii應用程式

在web伺服器目錄下,使用Yii框架提供的命令列工具建立Yii應用程式:

  1. 開啟命令列工具,進入web伺服器目錄,執行下列指令:
php yii/framework/yii webapp house_rental

其中,「house_rental」為Yii套用的名稱。

  1. 建立後,在web伺服器目錄下即可看到新建的Yii應用程式資料夾。

四、設定資料庫

在Yii應用程式資料夾中,開啟protected/config/main.php檔案。在該檔案中,將以下程式碼段替換為自己的資料庫設定資訊:

'db'=>array(
     'connectionString' => 'mysql:host=localhost;dbname=house_rental',
     'emulatePrepare' => true,
     'username' => 'username',
     'password' => 'password',
     'charset' => 'utf8',
),

其中,「localhost」為資料庫主機位址,「house_rental」為上一個步驟中建立的資料庫名稱,「username」和「password」分別為資料庫登入帳號和密碼。

五、建立資料模型

在Yii應用資料夾的models資料夾中,建立三個資料模型檔案HouseInfo.php、TenantInfo.php和OrderInfo.php,分別對應上述三個表。

  1. HouseInfo.php檔案:
<?php
 
class HouseInfo extends CActiveRecord
{
     //指定数据库表名
     public function tableName()
     {
          return 'house_info';
     }
 
     //定义验证规则
     public function rules()
     {
          return array(
               array('address, size, price', 'required'),
               array('size', 'numerical', 'integerOnly'=>true),
               array('address', 'length', 'max'=>200),
               array('price', 'length', 'max'=>50),
          );
     }
 
     //定义关联关系,HouseInfo和OrderInfo是一对多的关系
     public function relations()
     {
          return array(
               'order_info'=>array(self::HAS_MANY, 'OrderInfo', 'house_id'),
          );
     }
}
  1. #TenantInfo.php檔案:
<?php
 
class TenantInfo extends CActiveRecord
{
     //指定数据库表名
     public function tableName()
     {
          return 'tenant_info';
     }
 
     //定义验证规则
     public function rules()
     {
          return array(
               array('name, phone', 'required'),
               array('name', 'length', 'max'=>50),
               array('phone', 'length', 'max'=>20),
          );
     }
 
     //定义关联关系,TenantInfo和OrderInfo是一对多的关系
     public function relations()
     {
          return array(
               'order_info'=>array(self::HAS_MANY, 'OrderInfo', 'tenant_id'),
          );
     }
}
  1. OrderInfo.php檔案:
<?php
 
class OrderInfo extends CActiveRecord
{
     //指定数据库表名
     public function tableName()
     {
          return 'order_info';
     }
 
     //定义验证规则
     public function rules()
     {
          return array(
               array('house_id, tenant_id, order_date, status', 'required'),
               array('status', 'in', 'range'=>array('pending', 'reserved', 'paid', 'cancelled')),
               array('house_id, tenant_id', 'length', 'max'=>11),
          );
     }
 
     //定义关联关系,OrderInfo和HouseInfo是多对一的关系
     public function relations()
     {
          return array(
               'house_info'=>array(self::BELONGS_TO, 'HouseInfo', 'house_id'),
          );
     }
}

六、建立控制器和視圖

在Yii應用程式資料夾中,建立一個控制器檔案HouseController.php和一個視圖檔案house.php。

  1. HouseController.php檔:
<?php
 
class HouseController extends Controller
{
     public function actionIndex()
     {
          //查询所有房屋信息
          $houses = HouseInfo::model()->findAll();
          $this->render('house', array('houses' => $houses));
     }
}
  1. ##在瀏覽器中輸入http://localhost/house_rental/index.php,在網頁中可以看到房屋清單。
至此,一個簡單的租屋網站已經創建完成,你可以根據自己的需求進行功能擴展和美化。使用Yii框架開發應用,可以提高開發效率和程式碼質量,並且易於維護和更新。希望本文能對你有幫助。

以上是使用Yii框架創建租屋網站的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn