検索
ホームページバックエンド開発PHPチュートリアルYiiFramework エントリーのナレッジポイントの概要 (グラフィックチュートリアル)、yiiFramework ナレッジポイント_PHP チュートリアル

YiiFramework入門知識ポイントまとめ(画像とテキストチュートリアル)、yiiframework知識ポイント

この記事はYiiFramework入門知識ポイントをまとめています。参考のために皆さんと共有してください。詳細は次のとおりです:

Yii アプリケーションのスケルトンを作成する

web は Web サイトのルート ディレクトリです
yiic webapp /web/demo

GIIを通じてモデルとCURDを作成するときは注意する必要があります

1.モデルジェネレーターの操作

テーブル接頭辞がある場合でも、テーブル名にはテーブルの完全な名前、つまりテーブル接頭辞を含む名前を入力する必要があります。以下に示すように:

2.クラッドジェネレーターの操作

このインターフェースでは、モデルクラスにモデル名を入力します。最初の文字を大文字にします。モデルを生成するときに、proctected/models ディレクトリ内のモデル ジェネレーターによって生成されたファイル名を参照することもできます。以下に示すように:

news、newstype、statustype の 3 つのテーブルの CURD コントローラーを生成する場合、モデル ジェネレーターで、モデル クラスに News、newsType、および StatusType と入力します。大文字と小文字は作成されたファイル名と同じです。 NEWSやニュースと書かれている場合はNGです。

モジュール作成時の注意事項

GII を通じてモジュールを作成する場合、モジュール ID は通常小文字です。いずれの場合も、ここに入力された ID によって main.php 構成ファイル内の構成が決まります。以下の通り:

リーリー

ルーティング

system は yii フレームワークのフレームワーク ディレクトリを表します
application は、作成されたアプリケーションの下の保護されたディレクトリ (d:wwwrootblog など) を表します。
application.modules.Admin.AdminModule
アプリケーションディレクトリの下の modules ディレクトリの下の Admin ディレクトリにある AdminModules.php ファイルを表します (例: d:wwwrootblogprotected) (実際にはファイルのクラスの名前を指します)
システムデータベース*
YII フレームワークのフレームワーク ディレクトリ内の db ディレクトリ内のすべてのファイルを表します。

コントローラー内のaccessRulesの説明

リーリー

上記のコードのコメントを参照してください。

user: ユーザーのセッション情報を表します。詳しくは、API: CWebUser
を参照してください。 CWebUser は、Web アプリケーションの永続的な状態を表します。
CWebUser は、ID user を持つアプリケーション コンポーネントとして機能します。したがって、ユーザー ステータス には、Yii::app()->user

を介してどこからでもアクセスできます。 リーリー

getter メソッドまたは/および setter メソッド

リーリー

モデル/User.php

リーリー

その他の関連情報:

リーリー

モデル内のルールメソッド

リーリー

説明:

1. 検証フィールドはユーザーが入力した属性である必要があります。ユーザーが入力していないコンテンツは検証する必要がありません。
2. データベース内の操作フィールド (作成時間、更新時間、その他のフィールドなど、システムによって生成された場合でも、boyLee が提供する yii_computer ソース コードでは、システムによって生成されたこれらの属性は安全な場所に置かれません。参照)以下のコード)。 フォームで提供されていないデータについては、ルール メソッドで検証されていない限り、セーフに追加する必要があります。追加しないとデータベースに書き込むことができません

yii_computer のルール メソッドに関する News.php モデル

リーリー

ビューに動的コンテンツを表示する 3 つの方法

1. ビュー ファイルの PHP コードに直接実装します。たとえば、ビューに現在時刻を表示するには: コードをコピーします コードは次のとおりです:
2. 表示コンテンツをコントローラーに実装し、render

の2番目のパラメーターを通じてビューに渡します。

コントローラーメソッドには以下が含まれます:

リーリー

ファイルを表示:
コードをコピーします コードは次のとおりです:
呼び出された render() メソッドの 2 番目のパラメータのデータは配列 (配列型) です。 render() メソッドは配列内の値を抽出し、配列内のキーをビュー スクリプトに提供します。ビュースクリプトに指定されます。この例では、配列のキーは time、値は $theTime で、抽出された変数名 $time がビュー スクリプトで使用されます。これは、コントローラーからビューにデータを渡す方法です。

3. ビューとコントローラーは非常に近い兄弟であるため、ビュー ファイル内の $this は、このビューをレンダリングするコントローラーを参照します。前の例を変更し、値が現在の日付と時刻であるローカル変数の代わりに、コントローラー内のクラスのパブリック プロパティを定義します。次に、ビュー内の $this を通じてこのクラスのプロパティにアクセスします。

命名規則を表示する

表示ファイル名はActionIDと同じにしてください。ただし、これは推奨される命名規則にすぎないことに注意してください。実際、ビュー ファイル名は ActionID と同じである必要はありません。ファイル名を最初のパラメータとして render() に渡すだけです。

DB関連

リーリー リーリー リーリー リーリー リーリー リーリー

$condition を使用して、より複雑なクエリ条件を指定することもできます。文字列を使用する代わりに、$condition を CDbCriteria のインスタンスにすることができます。これにより、WHERE に限定されない条件を指定できます。例:

$criteria=new CDbCriteria;
$criteria->select='title'; // 只选择'title' 列
$criteria->condition='postID=:postID';
$criteria->params=array(':postID'=>10);
$post=Post::model()->find($criteria); // $params 不需要了

注意,当使用CDbCriteria 作为查询条件时,$params 参数不再需要了,因为它可以在CDbCriteria 中指定,就像上面那样。

一种替代CDbCriteria 的方法是给find 方法传递一个数组。数组的键和值各自对应标准(criterion)的属性名和值,上面的例子可以重写为如下:

$post=Post::model()->find(array(
 'select'=>'title',
 'condition'=>'postID=:postID',
 'params'=>array(':postID'=>10),
));

其它

1、链接
复制代码 代码如下:title,0,26),array('prerfp/details','id'=>$val->rfpid),array('target'=>'_blank'));?>

具体查找API文档:CHtml的link()方法
复制代码 代码如下:title,0,26); ?>
具体请查找API文档:CController的createUrl()方法

以上两个连接效果等同

组件包含

一个示例:

在视图中底部有如下代码:
复制代码 代码如下:widget ( 'Notice' ); ?>

打开protected/components下的Notice.php文件,内容如下:

<&#63;php
Yii::import('zii.widgets.CPortlet');
class Banner extends CPortlet
{
  protected function renderContent()
  {
    $this->render('banner');
  }
}

渲染的视图banner,是在protected/components/views目录下。

具体查看API,关键字:CPortlet

获取当前host

Yii::app()->request->getServerName();
//and
$_SERVER['HTTP_HOST'];
$url = 'http://'.Yii::app()->request->getServerName(); $url .= CController::createUrl('user/activateEmail', array('emailActivationKey'=>$activationKey));
echo $url;

关于在发布新闻时添加ckeditor扩展中遇到的情况

$this->widget('application.extensions.editor.CKkceditor',array(
  "model"=>$model,        # Data-Model
  "attribute"=>'news_content',     # Attribute in the Data-Model
  "height"=>'300px',
  "width"=>'80%',
"filespath"=>Yii::app()->basePath."/../up/",
"filesurl"=>Yii::app()->baseUrl."/up/",
 );

echo Yii::app()->basePath

如果项目目录在:d:\wwwroot\blog目录下。则上面的值为d:\wwwroot\blog\protected。注意路径最后没有返斜杠

echo Yii::app()->baseUrl;

如果项目目录在:d:\wwwroot\blog目录下。则上面的值为/blog。注意路径最后没有返斜杠

(d:\wwwroot为网站根目录),注意上面两个区别。一个是basePath,一个是baseUrl

其它(不一定正确)

在一个控制器A对应的A视图中,调用B模型中的方法,采用:B::model()->B模型中的方法名();

前期需要掌握的一些API
CHtml

希望本文所述对大家基于Yii框架的PHP程序设计有所帮助。

您可能感兴趣的文章:

  • Yii入门教程之目录结构、入口文件及路由设置
  • Yii入门教程之Yii安装及hello world
  • Yii PHP Framework实用入门教程(详细介绍)
  • Yii查询生成器(Query Builder)用法实例教程
  • Yii实现单用户博客系统文章详情页插入评论表单的方法
  • YII使用url组件美化管理的方法
  • Yii中CGridView实现批量删除的方法
  • Yii快速入门经典教程

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/1085877.htmlTechArticleYiiFramework入门知识点总结(图文教程),yiiframework知识点 本文总结了YiiFramework入门知识点。分享给大家供大家参考,具体如下: 创建Yii应用骨...
声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
php如何使用Yii3框架?php如何使用Yii3框架?May 31, 2023 pm 10:42 PM

随着互联网的不断发展,Web应用程序开发的需求也越来越高。对于开发人员而言,开发应用程序需要一个稳定、高效、强大的框架,这样可以提高开发效率。Yii是一款领先的高性能PHP框架,它提供了丰富的特性和良好的性能。Yii3是Yii框架的下一代版本,它在Yii2的基础上进一步优化了性能和代码质量。在这篇文章中,我们将介绍如何使用Yii3框架来开发PHP应用程序。

如何使用PHP框架Yii开发一个高可用的云备份系统如何使用PHP框架Yii开发一个高可用的云备份系统Jun 27, 2023 am 09:04 AM

随着云计算技术的不断发展,数据的备份已经成为了每个企业必须要做的事情。在这样的背景下,开发一款高可用的云备份系统尤为重要。而PHP框架Yii是一款功能强大的框架,可以帮助开发者快速构建高性能的Web应用程序。下面将介绍如何使用Yii框架开发一款高可用的云备份系统。设计数据库模型在Yii框架中,数据库模型是非常重要的一部分。因为数据备份系统需要用到很多的表和关

Yii2 vs Phalcon:哪个框架更适合开发显卡渲染应用?Yii2 vs Phalcon:哪个框架更适合开发显卡渲染应用?Jun 19, 2023 am 08:09 AM

在当前信息时代,大数据、人工智能、云计算等技术已经成为了各大企业关注的热点。在这些技术中,显卡渲染技术作为一种高性能图形处理技术,受到了越来越多的关注。显卡渲染技术被广泛应用于游戏开发、影视特效、工程建模等领域。而对于开发者来说,选择一个适合自己项目的框架,是一个非常重要的决策。在当前的语言中,PHP是一种颇具活力的语言,一些优秀的PHP框架如Yii2、Ph

Yii框架中的数据查询:高效地访问数据Yii框架中的数据查询:高效地访问数据Jun 21, 2023 am 11:22 AM

Yii框架是一个开源的PHPWeb应用程序框架,提供了众多的工具和组件,简化了Web应用程序开发的流程,其中数据查询是其中一个重要的组件之一。在Yii框架中,我们可以使用类似SQL的语法来访问数据库,从而高效地查询和操作数据。Yii框架的查询构建器主要包括以下几种类型:ActiveRecord查询、QueryBuilder查询、命令查询和原始SQL查询

Symfony vs Yii2:哪个框架更适合开发大型Web应用?Symfony vs Yii2:哪个框架更适合开发大型Web应用?Jun 19, 2023 am 10:57 AM

随着Web应用需求的不断增长,开发者们在选择开发框架方面也越来越有选择的余地。Symfony和Yii2是两个备受欢迎的PHP框架,它们都具有强大的功能和性能,但在面对需要开发大型Web应用时,哪个框架更适合呢?接下来我们将对Symphony和Yii2进行比较分析,以帮助你更好地进行选择。基本概述Symphony是一个由PHP编写的开源Web应用框架,它是建立

yii如何将对象转化为数组或直接输出为json格式yii如何将对象转化为数组或直接输出为json格式Jan 08, 2021 am 10:13 AM

yii框架:本文为大家介绍了yii将对象转化为数组或直接输出为json格式的方法,具有一定的参考价值,希望能够帮助到大家。

Yii2编程指南:运行Cron服务的方法Yii2编程指南:运行Cron服务的方法Sep 01, 2023 pm 11:21 PM

如果您问“Yii是什么?”查看我之前的教程:Yii框架简介,其中回顾了Yii的优点,并概述了2014年10月发布的Yii2.0的新增功能。嗯>在这个使用Yii2编程系列中,我将指导读者使用Yii2PHP框架。在今天的教程中,我将与您分享如何利用Yii的控制台功能来运行cron作业。过去,我在cron作业中使用了wget—可通过Web访问的URL来运行我的后台任务。这引发了安全问题并存在一些性能问题。虽然我在我们的启动系列安全性专题中讨论了一些减轻风险的方法,但我曾希望过渡到控制台驱动的命令

怎么精通C语言?怎么精通C语言?May 08, 2019 pm 05:40 PM

首先要有一定的计算机基础,为后续提升做好准备;其次你要制定好学习计划并且要多练多思考,要掌握常见的知识点;最后查疑补缺。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

mPDF

mPDF

mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 Linux 新バージョン

SublimeText3 Linux 新バージョン

SublimeText3 Linux 最新バージョン