CodeIgniter框架学习记录
来源:互联网 发布:北京软件退税政策 编辑:程序博客网 时间:2024/05/22 00:27
1.以下划线为开头的控制器方法不能被浏览器直接访问,但可以被其他方法调用
必须public,不能下划线开头的方法才能被浏览器直接访问,访问时方法名是不区分大小写的
2.变量的共享:
在控制器里:
public function index(){$arr = array(array('id'=>'101','name'=>'jack'),array('id'=>'102','name'=>'bob'),);$this->load->vars('ar',$arr);$tel = '101012';$this->load->vars('tele',$tel);$values['title']='much';$values['title2']='apple';$this->load->vars($values);$this->load->view('test');}
在视图里:
<html><head><meta http-equiv="Content-Language" content="en" /><meta name="GENERATOR" content="PHPEclipse 1.0" /><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /><title>title</title></head><body bgcolor="#FFFFFF" text="#000000" link="#FF9966" vlink="#FF9966" alink="#FFCC99"><?phpecho $tele;echo $title;echo $title2;?><table><?php foreach($ar as $item)://推荐使用此方法?><tr><td><?php echo $item['id'];?></td><td><?php echo $item['name'];?></td></tr><?php endforeach;?></table></body></html>
3.数据库读出数据
<span style="white-space:pre"></span> $sql = 'select * from designer'; $list = $this->db->query($sql)->result(); $user['user'] = $list; $this->load->view('test',$user);->result 返回数组,每一条是对象
->result_array 返回数组,每一条是数组
->row 返回第一条数据,是对象
4.在默认的情况下,CodeIgniter会显示所有的PHP错误。但是当你开发程序结束时,你可能想要改变这个情况。
你会发现在index.php文件顶端有这个函数error_reporting(),通过它可以进行对错误的设置。 即使你关闭了错误报告,当有错误发生时,错误记录也不会停止。
所以,修改php.ini不能达到我们想要的效果。
下面是解决办法:
Codeigniter中禁止A Database Error Occurred错误提示
在CodeIgniter 用户指南中说到,设置 ENVIRONMENT 常量为 'development' 值将会允许所有PHP错误报告都输出到浏览器。 相反的,设置常量为 'production' 将会禁止所有错误报告的输出。
index.php中修改error_reporting:
代码如下:
define('ENVIRONMENT', 'production'); //默认是developmentif (defined('ENVIRONMENT')) { switch (ENVIRONMENT) { case 'development': error_reporting(E_ALL); //添加 ^E_NOTICE 可以屏蔽提示 添加^E_WARNING可以屏蔽警告 break; case 'testing': case 'production': error_reporting(0); break; default: exit('The application environment is not set correctly.'); } }
Codeigniter中禁止A PHP Error was encountered错误提示
config/database.php中修改数据库设置:
代码如下:
$db['default']['db_debug'] = FALSE;5.解决
A PHP Error was encountered
Warning: Invalid argument supplied for foreach
if(is_array($arr)) //add{//用if包围foreach即可}6.模型加载
<?phpclass My_model extends CI_Model{public function getAll(){$this->load->database();$sql = "select * from designer";$res = $this->db->query($sql);return $res->result_array();}}
public function getAll(){$this->load->model("My_model");$result = $this->My_model->getAll();var_dump($result);}起一个别名
public function getAll(){$this->load->model("My_model","user");$result = $this->user->getAll();var_dump($result);}
文件名全小写,类名全大写,建议增加后缀名防止和控制器冲突
7.url相关参数
public function sub(){ echo $this->input->post('password'); } public function loadview(){ $this->load->helper("url"); $this->load->view("view"); }
<form action="<?php echo site_url("welcome/sub")?>" method="post" enctype="text/plain"> name<input type="text" name="name" value="value" size="40" maxlength="40"/> password<input type="text" name="password" value="value" size="40" maxlength="40"/> email<input type="text" name="email" value="value" size="40" maxlength="40"/> <input type="submit" name="submit" value="value"/> </form>另外base_url为基础目录 即为application文件夹所在的目录。
此helper可以配置自动加载,database也一样
8.修改默认控制器
8.修改默认控制器
在config\routes文件中
route_defaultcontroller
9.配置路由
9.配置路由
本身不存在的控制器方法,可以通过路由统一路由到同一个控制器来处理,可以隐藏入口文件
0 0
- CodeIgniter框架学习记录
- CodeIgniter框架学习
- codeigniter框架学习
- PHP框架 CodeIgniter学习
- 【PHP框架CodeIgniter学习】Helloworld
- CodeIgniter(CI)框架的学习。。。
- PHP框架CodeIgniter学习笔记(一)
- PHP codeigniter 框架编程学习之【应用程序】
- 【PHP框架CodeIgniter学习】数据库操作
- CodeIgniter框架学习——基础MVC
- CodeIgniter 框架
- 【ci框架】codeigniter中如何记录错误日志
- 【ci框架】codeigniter中如何记录错误日志
- CodeIgniter框架源码学习之框架初始化文件--CodeIgniter.php
- codeIgniter 学习
- CodeIgniter 学习
- Codeigniter-CI开源框架学习资料
- PHP codeigniter 框架编程学习之【超链接使用】
- Java开发环境安装搭建
- Nconf 操作手册
- POJ 1939 Diplomatic License(求线段中点)
- quick-cocos2d-x 笔记
- 我来讲述一个没忍住现如今后悔的悲惨经历
- CodeIgniter框架学习记录
- iOS 异步POST
- 常用正则表达式收录
- FPGA中亚稳态——让你无处可逃
- PAT 循环-11. 水仙花数(20) 快速 非直接打印结果
- HDU 4995 Revenge of kNN
- iOS网络框架设计
- Android屏幕适配经验谈(转载)
- 笔记21 异常