CodeIgniter框架——函数剖析+小知识点

连接数据库:

格式: mysql -h主机地址 -u用户名-p用户密码

数据库的提示符:mysql>

退出数据库:

exit(回车)




知识点积累:




1、date_default_timezone_set — 设定用于一个脚本中所有日期时间函数的默认时区

格   式:bool date_default_timezone_set ( string $timezone_identifier )

参   数:timezone_identifier,时区标识符,例如 UTC 或 Europe/Lisbon。合法标识符列表见所支持的时区列表

返回值:如果 timezone_identifier 参数无效则返回 FALSE,否则返回 TRUE




2、date_default_timezone_get — 取得一个脚本中所有日期时间函数所使用的默认时区

格式:string date_default_timezone_get ( void )

返回值:返回一个string。




3、time— 返回当前的 Unix 时间戳

格式:int time ( void )

返回值:返回自从 Unix 纪元(格林威治时间 1970 年 1 月 1 日 00:00:00)到当前时间的秒数。




4、date— 格式化一个本地时间/日期  

格式:string date ( string $format [, int $timestamp] )

参数:format - 必需。规定时间戳的格式。

   timestamp- 可选。规定时间戳。默认是当前时间和日期。

注释:时间戳是一种字符序列,它表示具体事件发生的日期和事件。

下面列出了一些常用于日期的字符:
  d - 表示月里的某天(01-31)
  m - 表示月(01-12)
  Y - 表示年(四位数)
  1 - 表示周里的某天
其他字符,比如 "/", "." 或 "-" 也可被插入字符中,以增加其他格式。
下面的例子用三种不同方法格式今天的日期:
<?php
echo "今天是 " . date("Y/m/d") . "<br>";
echo "今天是 " . date("Y.m.d") . "<br>";
echo "今天是 " . date("Y-m-d") . "<br>";
echo "今天是 " . date("l");
?>
下面是常用于时间的字符:
  h - 带有首位零的 12 小时小时格式
  i - 带有首位零的分钟
  s - 带有首位零的秒(00 -59)
  a - 小写的午前和午后(am 或 pm)
下面的例子以指定的格式输出当前时间:
<?php
echo "现在时间是 " . date("h:i:sa");
?>
通过 PHP mktime() 创建日期
date() 函数中可选的时间戳参数规定时间戳。如果您未规定时间戳,将使用当前日期和时间(正如上例中那样)。
mktime() 函数返回日期的 Unix 时间戳。Unix 时间戳包含 Unix 纪元(1970 年 1 月 1 日 00:00:00 GMT)与指定时间之间的秒数。
语法:mktime(hour,minute,second,month,day,year)
通过 PHP strtotime() 用字符串来创建日期
PHP strtotime() 函数用于把人类可读的字符串转换为 Unix 时间。
语法:strtotime(time,now)
实例:
<?php
$d=strtotime("tomorrow");
echo date("Y-m-d h:i:sa", $d) . "<br>";
$d=strtotime("next Saturday");
echo date("Y-m-d h:i:sa", $d) . "<br>";
$d=strtotime("+3 Months");
echo date("Y-m-d h:i:sa", $d) . "<br>";
?>



5、使用POST、COOKIE、SERVER数据

跨站脚本过滤:$data = $this->input->xss_clean($data);

Note:此功能只应该处理提交的数据。而不应该用于其它情况,因为它要消耗很大的cpu资源。

CodeIgniter 有3个 helper方法可以让用户取得POST, COOKIE 或 SERVER 的内容,如下所示:

(1)$this->input->post()
格式:$this->input->post(‘some_data‘, TRUE);
参数:第一个参数是所要取得的post中的数据,如果数据不存在,方法将返回 FALSE (布尔值)。第二个参数是可选的,如果想让取得的数据经过跨站脚本过滤(XSS Filtering),把第二个参数设为TRUE。
扩展:$this->input->get(‘some_data‘, TRUE);用来取得GET数据。
     $this->input->get_post(‘some_data‘, TRUE);先搜索POST数据、后搜索GET数据。
(2)$this->input->cookie()
(3)$this->input->server() 



 6、装载类

装载,顾名思义,是用来装载元素。这些元素可以是库 (类) 视图文件, 辅助函数, 模型, 或者是你自己的文件。



(1)$this->load->vars($array);

说明:这个函数以一个关联数组作为输入参数,将这个数组用PHP的extract函数,转化成与这个数组对应的变量 。你之所以要单独用这个函数也许是因为,你想在控制器的构造函数中设置一些全局变量,以使这些变量在任意函数调用的视图(view)里能够用上。你能多次调用这个函数。数组数据被缓存并被并入一个数组,用来转化成变量。



(2)$this->load->helper(‘file_name‘);

说明:这个函数的作用是载入辅助函数,file_name 是辅助函数对应的文件名,不包括 _helper.php 扩展名。 



(3)$this->load->library(‘class_name‘,$config,‘object name‘);

说明:这个函数是用来加载核心类。

class_name是你要加载的类的名称。提示: “类”和“库”是可替换使用的。

比如,你想用 CodeIgniter 来发送邮件,第一步就是在你的控制器里加载 email 类。
$this->load->library(‘email‘);
一旦被加载,就可以使用该类了, 使用 $this->email->some_function()。

第二个参数是可选的,作用是允许你有选择性地传递配置参数。一般来说你可以将参数以数组的形式传递过去。配置参数通常也可以保存在一个配置文件中。

$config = array (
                  ‘mailtype‘ => ‘html‘,
                  ‘charset‘  => ‘utf-8,
                  ‘priority‘ => ‘1‘
               );
$this->load->library(‘email‘, $config);

第三个参数也是可选的,如果为空,类库通常就会被赋值给一个与类库同名的对象。例如,如果类库名为 Session, 它将会被赋值给一个名为 $this->session 的变量。如果你希望使用你的自定义名称,你可以通过第三个参数把它传递过去。

$this->load->library(‘session‘, ‘‘, ‘my_session‘);
// Session 类现在可以通过下面的方式访问:
$this->my_session


(4)$this->load->file(‘filepath/filename‘,true/false);

说明:这是一个通用的文件载入函数。在第一个参数中给出文件所在的路径和文件名,对应的文件将会被打开。默认情况下,数据会被发送给浏览器,就如同视图文件一样,但如果你将第二个参数设置为 true (布尔型) 那么数据就会以字符串的形式被返回,而不是发送给浏览器。



(5)$this->load->database(‘options‘,true/false);

这个函数的作用是载入数据库类。这两个参数都是可选的。请查看 数据库 段落以获取更多信息。



(6)$this->load->view(‘filename‘,$data,true/false);

这个函数是用来加载你的视图文件。

第一个参数是必须的。 指定你要载入的视图文件的名称。 注意: 无需加上 .php 扩展名,除非你使用了其他的扩展名。

第二个参数 optional 允许你传入数组或对象, 传入的数组或对象将使用 php extract 函数导出,你可以在视图中任意使用这些导出的变量。

第三个参数是可选的,作用是改变函数的运行方式,将数据以字符串的形式返回,而不是发送给浏览器。当你希望用不同的方式处理数据时,这个参数就非常有用。如果你将这个参数设置为true (布尔型),函数就会返回数据。这个参数的默认值是 false, 也就是数据将会被发送给浏览器。如果你希望数据被返回,记得要将它赋值给一个变量:

$string = $this->load->view(‘myfile‘, ‘‘, true);


(7)$this->load->database(‘model_name‘);

这个函数是用来载入你的模型文件。




7、URL辅助函数

redirect()函数:

通过发送HTTP头,命令客户端转向到您指定的URL。您既可以指定一个完整的URL,也可以对于站内内容,指定基于网站根目录的相对URL。本函数会自动根据您的配置文件,构造出完整的URL。

你可以设定第二个参数为 location 定位操作(默认)或者 refresh 刷新操作。定位操作比刷新操作执行速度快,但是在Windows服务器上有时会报错。可选的第3个参数允许你发送一个特定的HTTP请求返回码 - 举例来说这可以用来创建303请求重定向来服务于搜索引擎。 默认的请求返回码是302(临时重定向)。第3个参数只使用于‘location‘重定向,而不是用于‘refresh‘。范例:

//注意!!一定不要忘了加载 $this->load->helper(‘url‘);

if ($logged_in == FALSE)
{
     redirect(‘/login/form/‘, ‘refresh‘);
}

// with 301 redirect
redirect(‘/article/13‘, ‘location‘, 301);
注意:由于此函数需要处理header头文件,因此它必须在向客户端输出任何内容之前调用。
注意:如果您想对HTTP头做更细致的设置,您可以使用输出类的 set_header() 函数。


时间: 2024-11-02 23:36:36

CodeIgniter框架——函数剖析+小知识点的相关文章

php函数和小知识点

<?php //语句 //分支语句 /*$a=5; if($a==5) { echo "相等";} else { echo "budeng";}*/ //if //if...else //if...else..if //if的嵌套 /*switch($a) { case 1: echo "111"; break; case 2: echo "222"; break; case 3: echo "333"

Go---第五章:函数(小知识点笔记)

1.函数声明: func name(parameter-list) (return-list) { body } 形参(parameter-list)指定参数名和参数类型,由调用者传入实参初始化,为函数内部的局部变量   返回值列表(return-list)指定函数返回值类型,若返回一个未命名的返回值或者没有返回值的时候,圆括号可省略(命名返回值会生成局部变量,并初始化为零值) 2.实参是按值传递,一般修改函数形参变量不会修改调用者的实参的值:如果实参包含引用类型,如指针,slice,map,函

CodeIgniter框架——知识点汇总

NO1.学习要点: 一.CodeIgniter 框架的简介 二.CodeIgniter 框架的安装 三.CodeIgniter 框架的目录结构分析 四.CodeIgniter 框架是如何工作的? 五.CodeIgniter 框架中的控制器.视图.模型及数据库操作 六.CodeIgniter 框架中辅助函数.类库.适配器的学习 七.…… NO2. 一.CodeIgniter 是什么? 1.CodeIgniter 是一个应用程序框架 CodeIgniter 是一个为用 PHP 编写网络应用程序的人员

私人定制javascript中函数小知识点

函数的定义 首先在javascript中,函数就是对象,程序可以随意操控它们.比如,可以给它们设置属性,甚至调用它们的方法.函数使用function关键字来定义.它既可以用在函数定义表达式,也可以用在函数声明语句中.函数声明function后面必须要更上函数名称也就是所谓的函数名称标识符.如果是函数表达式函数名称标识符可有可无.这段重点是函数是对象,所以函数表现出来的种种行为你想想成对象,那么很多疑惑可能就恍如昨日初见. 函数调用 4种方式来调用javascript函数: 1.作为函数 就是函数

day-3 小知识点补充 编码 集合 文件及函数初识

1. 小知识点的补充 ==数值比较 is比较两边的内存地址 id获取内存地址 小数据池str int,公用一个内存,目的节省内存空间. 要求:A. int范围是-5到256,指向一个地址空间 B. str: 1.不能含有特殊字符 2.单个元素乘以数字不能超过21 2. 编码 字符:看到内容的最小单位.比如: abc:a一个字符 中国:中 Ascii码:1个字节,字母,数字,特殊字符 Unicode:也称万国码,最开始2个字节表示一个字符,后升级到4个字节表示一个字节 Utf-8:最后用8位表示一

CodeIgniter框架中关于URL(index.php)的那些事

最近,在做自己的个人网站时,采用了轻量级的php框架CodeIgniter.乍一看上去,代码清晰简洁,MVC模型非常容易维护.开发时我采用的工具是Netbeans IDE 8.0,当然,本文的内容和开发工具是没有关系的,和我们最后网站采用的服务器有很大的关系.目前最为常用的两款免费web服务器是Apache和Nginx(这两款服务器的比较,可以参考一篇网上的经典文章:http://zyan.cc/nginx_php_v6/).在我网站开发与上线的过程中,刚好两个服务器都用到了,他们配置CodeI

ios基础-小知识点收集(1)

不积跬步,无以至千里;不积小流,无以成江海.----荀子 收集学习ios中的小知识点,每天进步一点点. (一)@class和 #import class:只声明类,不会引入类文件,加快编译速度,防止类相互import出错:在m中仍然需要import整个类文件. import导入整个类文件,在需要使用类中的变量.函数和协议的时候需要使用. (二)静态变量static.全局变量extern.局部变量.实例变量 static:为整类而非单个对象使用,隐藏封装在类中,对外不可见. 静态变量的优点: 1.

分享CodeIgniter框架中关于URL(index.php)的那些事

A8U论坛最近,在做自己的个人网站时,采用了轻量级的php框架CodeIgniter.乍一看上去,代码清晰简洁,MVC模型非常容易维护.开发时我采用的工具是Netbeans IDE 8.0,当然,本文的内容和开发工具是没有关系的,和我们最后网站采用的服务器有很大的关系.目前最为常用的两款免费web服务器是Apache和Nginx(这两款服务器的比较,可以参考一篇网上的经典文章:http://zyan.cc/nginx_php_v6/).在我网站开发与上线的过程中,刚好两个服务器都用到了,他们配置

使用 CodeIgniter 框架快速开发 PHP 应用(六)

原文:使用 CodeIgniter 框架快速开发 PHP 应用(六) 简化使用 Session 和安全 理论说得够多了! 现在让我们开始写我们自己的应用. 在这一章里,我们将会大致描述一下我们要建立的一个应用系统,而且我们分析一些会影响到网站系统的的基本问题也就是会话管理和安全. 在这一章,我们将会见到: .如何使你的网页安全 .如何使用 CI 的会话类 开始用 CI 设计一个实际的网站 我们已经看过 CI 安装时生成的welcome页以及它内部动作中控制器文件和视图文件的动作流程. 实际上这就