一、关于breadcrumbs
1,给breadcrumbs加超链接
$this->breadcrumbs=array( 'Message'=>array('message/index'), 'HelloWorld', );
2,给breadcrumbs修改首页为中文
我目前采用的是在config/main.php中设置为zh_ch,但还有另外一种解决办法,
<?php $this->widget('zii.widgets.CBreadcrumbs', array( 'homeLink'=>CHtml::link('首页',Yii::app()->homeUrl), //这里可以修改HOME,变成中文 'links'=>$this->breadcrumbs, )); ?><!-- breadcrumbs -->
3,博客breadcrumbs使用
1,现在../components/controller.php中添加
public $breadcrumbs=array();
2,在再../views/layouts/main.php
<?php if(isset($this->breadcrumbs)):?> <?php $this->widget('zii.widgets.CBreadcrumbs', array('links'=>$this->breadcrumbs,)); ?> <?php endif?>
3,在具体页面中
$this->breadcrumbs=array( 'xx列表'=>array('index'), $model->workerName, );
二、关于createUrl和CHtml::link参数设置的区别
前者将多个参数放进一个数组中,后者直接向后累计添加(不放进数组)
1,createUrl应用
<a href="<?php echo $this->createUrl('news/view',array('id'=>$companyNew->id,'news_type'=>$companyNew->news_type)) ?>" title="<?php echo $companyNew->title ?>">
批注:在MVC中,可以使用$this->createUrl();在../components/xx.php中使用Yii::app()->createUrl();
2,CHtml::link应用
<?php echo CHtml::link(CHtml::encode($data->title), array('view', 'id'=>$data->id,'news_type'=>$data->news_type)); ?> //例如: <?php echo CHtml::link('Link Text', array('controller/action','param1'=>'value1'));?> html输出是<a href="index.php?r=controller/action¶m1=value1">Link Text</a> //多参数 <?php echo CHtml::link('Link Text', array('controller/action','param1'=>'value1','param2'=>'value2'));?> html输出是<a href="index.php?r=controller/action¶m1=value1¶m2=value2">Link Text</a> //额外参数: <?php echo CHtml::link('Link Text', array('controller/action','param1'=>'value1'), array('target'=>'_blank'));?> html输出是<a target="_blank" href="index.php?r=controller/action¶m1=value1">Link Text</a> //绝对路径: <?php echo CHtml::link('Link Text', array('/controller/action'));?> //指定模块下的路径 <?php echo CHtml::link('Link Text', array('/module-id/controller/action'));?> //无效链接: <?php echo CHtml::link('Link Text', array('href'=>'javascript:void(0)'));?> <a href="javascript:void(0)">Link Text</a>
三、CHtml::linkButton
<?php echo CHtml::linkButton('LinkName', array('submit'=>array('controller/action','param'=>'value1'), 'confirm'=>"Are you sure?",));?>
相关推荐
1. **良好的架构**:按照Yii的MVC模式进行设计,模型层负责业务逻辑,视图层负责展示,控制器层协调两者。 2. **数据库操作**:使用ActiveRecord模式,使得数据库操作更加便捷,对象关系映射(ORM)使得代码更易于...
2. 模板引擎:内置模板引擎支持模板继承和布局,简化视图层的开发。 3. 自动加载:通过自动加载机制,可以减少手动引入类库的繁琐工作。 4. ORM支持:提供对象关系映射,使得数据库操作更加便捷。 5. 错误和日志管理...
5. **模板引擎**:许多PHP框架内置了模板引擎,如Twig或Smarty,学习如何使用它们来分离视图层和业务逻辑。 6. **安全实践**:学习如何防止SQL注入、XSS攻击、CSRF等常见Web安全问题。 7. **支付接口集成**:熟悉...
4. **views**:视图层,包含HTML模板,用于展示用户界面。 5. **libraries**或**classes**:自定义类库,封装复用的功能。 6. **config**:配置文件,如数据库连接信息。 7. **database**:数据库脚本,用于创建和...
4. **模板引擎**:用于分离视图层的逻辑,如Twig或Blade,使得HTML更易于维护。 5. **依赖注入**:帮助对象之间的解耦,提高代码的灵活性,例如使用 Laravel 的服务容器。 6. **权限控制**:如基于角色的访问控制...
6. **模板引擎**:例如Twig、Smarty等,可以将视图层与逻辑层分离,让网页设计更加简洁和灵活。 7. **错误处理和日志记录**:通过try-catch语句和异常处理,以及error_reporting和error_log函数,确保程序的稳定性...
- 视图层用于渲染用户界面,ThinkPHP支持模板引擎,允许开发者使用PHP语法编写模板。 - 模板继承和布局功能有助于保持页面设计的一致性。 7. **控制器与动作** - 控制器处理HTTP请求,组织业务逻辑,并调用模型...
- **模板引擎**:如Smarty,用于分离视图层和逻辑层,简化页面渲染。 - **session与cookie**:用于管理用户状态,实现会话跟踪。 - **安全防护**:包括输入验证、SQL注入防御、XSS防护等,保障网站安全。 - **AJAX**...
在PHP中,开发者可以利用MVC(Model-View-Controller)模式来组织代码,实现数据层、逻辑层和视图层的分离,提高代码可维护性。 【压缩包子文件的文件名称列表】中的"132699164529925451"看起来像是一个随机生成的...
2. **View(视图)**:视图层是用户看到和与之交互的部分。它通常由HTML、CSS和JavaScript组成,负责数据的展示。视图从模型获取数据并渲染成用户友好的格式。 3. **Controller(控制器)**:控制器作为模型和视图...
视图层则负责展示数据,通常包括前端网页;控制器则作为两者之间的桥梁,处理用户的请求并更新模型和视图。 系统可能包含了以下功能模块: 1. 用户管理:注册、登录、个人信息管理,可能还支持第三方登录如微信、...
2. **View**: 视图层负责展示数据给用户。在"shopmvc10"项目中,视图文件可能包括HTML模板、CSS样式表和JavaScript脚本,它们共同构建了用户在浏览器中看到的页面布局和设计。 3. **Controller**: 控制器是模型和...
- View:视图层,主要负责数据的展示,通常包含HTML、CSS和JavaScript等前端元素。 - Controller:控制器层,作为模型和视图之间的桥梁,处理用户请求,调用模型并更新视图。 3. **构建PHP 7 MVC框架的步骤** - ...
7. **模板引擎**:视图层可能使用了如Twig或Smarty这样的模板引擎,使开发者能将逻辑和呈现分离,提高代码可读性和维护性。 8. **前端资源**:"base_shop"可能包含CSS样式表、JavaScript文件和图片资源,负责页面的...
5. **views**:视图层,负责展示数据,通常为HTML模板。 6. **libraries**或**helpers**:自定义函数库和辅助函数。 7. **public**目录:存放静态资源,如CSS、JavaScript文件和图片。 8. **vendor**目录:如果使用...