1.require_once & require
  include() 函数会将指定的档案读入并且执行里面的程序
  include_once() 与include相同,但只允许一次;
  require() 函数会将目标档案的内容读入,并且把自己本身代换成这些读入的内容
  require_once() 只导入一次

  备注:require这个读入且代换的动作在PHP引擎编译程序代码时发生,PHP3是编译一行执行一行,而PHP4之后是完整
  编译后再执行;require() 通常来导入静态的内容,而 include() 则适合用来导入动态的程序代码

2. session
  Session_start();
  $_SESSION["name"] = "Hello";
  unset($_SESSION["name"]);//清除某个session
  session_destroy(); //清空当前用户所有session

3. preg_match
  preg_match (pattern , subject, matches)
  pattern:正则表达式
  subject:需要匹配检索的对象
  mathes:存储匹配结果的数组

4. parse_url
  对url的信息进行解析并抓取
  $url = "http://www.electrictoolbox.com/php-extract-domain-from-full-url/";
  $parts = parse_url($url);
  输出:
    Array
    (
      [scheme] => http
      [host] => www.electrictoolbox.com
      [path] => /php-extract-domain-from-full-url/
    )

5. header
  向客户端发送原始的报文头
  1、页面跳转:
    header("Location: http://www.baidu.com");
  2、导出文件:
    header("Content-type:application/pdf");
    header("Content-Disposition:attachment;filename='downloaded.pdf'");
    readfile("/app/welcome.php");
  3、修改浏览器设置:
    header('Content-type: text/calendar; charset=utf-8');

6. file_get_contents
  把整个文件读入一个字符串中,可用以读取配置文件

7. explode & implode
  explode:使用一个字符串分割另一个字符串描写 返回一个数组,同javascript的split
  implode: 把数组元素合并成一个字符串

8. mysql_connect & mysql_pconnect
  1)mysql_connect: 脚本执行完后每次采用TCP等于数据库服务器进行进程间通信
    mysql_pconnect: 会维持底层的通信链路,如果两个进程间已经建立;
  2)php 在cgi模式下两种连接方式无关,因为CGI(因为CGI解释器进程)都会释放资源;
  3)持久连接可能存在问题,如apache设置并发进程为100,然后mysql并发进程设置为10时,资源会被消耗完;

9、$_COOKIE
1)$_COOKIE["UPEADMIN_USERID"] 取cookie值;
2)setcookie("user", "Alex Porter", time()+3600);

10、echo
1) 动态生成javascript 语句:echo "<script>location.href='admin.php';</script>";

11、mysql函数:
1)mysql_free_result:释放返回结果的内存;
2)mysql_real_escape_string:函数转义 SQL 语句中使用的字符串中的特殊字符,如/n /r /等,在获取input字符串输入时处理;
3)mysql_num_rows:返回结果集中行的数目;
4)mysql_fetch_object/mysql_fetch_array: 获取mysql操作的返回值

12、<?= php的输出格式,可以是变量也可以是表达式
例如:
<title><?=$var_Config['Title'];?><</title>

13、define 定义常量
define("GREETING","Hello world!",TRUE);
  备注:TRUE 表示对大小写不敏感

14、利用hidden input;
1) 在form 表单中增加一个影藏input
  <input type="hidden" name="action" value="actionname" />
2) 在处理该post请求的php中,判断:
  $actionname = $_POST["action"];
3) 在该php中集中处理php 请求;

php杂记(一)的更多相关文章

  1. [Erlang 0118] Erlang 杂记 V

       我在知乎回答问题不多,这个问题: "对你职业生涯帮助最大的习惯是什么?它是如何帮助你的?",我还是主动回答了一下.    做笔记 一开始笔记软件做的不好的时候就发邮件给自己, ...

  2. Ubuntu杂记——Ubuntu下用虚拟机共享上网

    由于最近把自己电脑环境换成了Ubuntu,但学校的网络是电信的闪讯,大学里用过的人都知道这货有多坑,而且没有Linux客户端,上网都是问题,怪不得国内用Linux的人那么少,特别是高校的学生(让我瞎逼 ...

  3. 一个ubuntu phper的自我修养(杂记)

    ubuntu使用杂记 1.flatabulous安装使用. flatabulous是一个ubuntu图标主题. 使用它,必须得安装tweak插件. sudo add-apt-repository pp ...

  4. 有关Java的日期处理的一些杂记

    在企业应用开发中,经常会遇到日期的相关处理,说实话JDK自带的日期方法很难用.就我个人而言我一般都会采用joda-time来替代JDK自身的日期. 这篇文章是杂记,所以写的比较零散,希望大家不要见怪. ...

  5. 分布式系统之CAP理论杂记[转]

    分布式系统之CAP理论杂记 http://www.cnblogs.com/highriver/archive/2011/09/15/2176833.html 分布式系统的CAP理论: 理论首先把分布式 ...

  6. Redis杂记

    参考资料: Redis 教程 | 菜鸟教程 : http://www.runoob.com/redis/redis-tutorial.html Redis快速入门 :http://www.yiibai ...

  7. MySQL杂记

    参考资料: w3school  SQL 教程 : http://www.w3school.com.cn/sql/index.asp 21分钟 MySQL 入门教程 : http://www.cnblo ...

  8. Android之开发杂记(一)

    1.cygwin环境变量设置 可在Cygwin.bat 中设置 set NDK_ROOT=P:/android/android-ndk-r8e 或者在home\Administrator\.bash_ ...

  9. ios程序开发杂记

    ios程序开发杂记 一.程序构建 与一般的程序构建无太大区别,都是源文件编译链接这一套,通常是在mac上做交叉编译,也就是利用xcode里带的ios编译工具集去生成arm架构的ios程序(或是x86的 ...

  10. [Flask]学习杂记--模板

    这个学习杂记主要不是分享经验,更多是记录下falsk的体验过程,以后做东西在深入研究,因为django之前用的时间比较长,所以很多概念都是一看而过,做个试验了解下flask的功能. flask中使用是 ...

随机推荐

  1. python enumerate用法

    含义:"枚举,列举" 对于一个可迭代的(iterable)/可遍历的对象(如列表.字符串),enumerate将其组成一个索引序列,利用它可以同时获得索引和值 enumerate多 ...

  2. aliyun阿里云Maven仓库地址——加速你的maven构建

    maven仓库用过的人都知道,国内有多么的悲催.还好有比较好用的镜像可以使用,尽快记录下来.速度提升100倍. http://maven.aliyun.com/nexus/#view-reposito ...

  3. 【大数据技巧】日均2TB日志数据在线快速处理之法

    [大数据技巧]日均2TB日志数据在线快速处理之法 http://click.aliyun.com/m/8958/

  4. mysql优化

    一.优化事项 1. 数据库(表)设计合理    (不合理设计导致内伤)    我们的表设计要符合3NF   3范式(规范的模式) , 有时我们需要适当的逆范式.2. sql语句的优化(索引,常用小技巧 ...

  5. 单片机与控制实验(5)——重量测量并在LCD12864显示

    一.实验目的和要求 掌握点阵式液晶显示屏的原理和控制方法,掌握点阵字符的显示方法.掌握模拟/数字(A/D)转换方式,进一步掌握使用C51语言编写程序的方法,使用C51语言编写实现重量测量的功能. 二. ...

  6. pyqt 过滤事件

    # 过滤鼠标滚轮事件 class stepItem(QWidget): def __init__(self, parent=None): QWidget.__init__(self, parent) ...

  7. [翻译svg教程]svg学习系列 开篇

    目录 [翻译svg教程]svg学习系列 开篇 [翻译svg教程 ]svg 的坐标系统 [翻译svg教程]svg 中的g元素 [翻译svg教程]svg中矩形元素 rect [翻译svg教程]svg中的c ...

  8. 扩展BindingList,防止增加、删除项时自动更新界面而不出现“跨线程操作界面控件 corss thread operation”异常

    在做界面程序时,常常需要一些数据类,界面元素通过绑定等方式显示出数据,然而由于UI线程不是线程安全的,一般都需要通过Invoke等方式来调用界面控件.但对于数据绑定bindingList而言,没法响应 ...

  9. dotnet webapi 中添加Swagger文档

    首先添加"SwaggerGenerator": "1.1.0","SwaggerUi": "1.1.0" 需要注意的是这 ...

  10. 反编译apk时遇到的问题

    第一次尝试反编译的时候遇到如下问题:Input file (ganzhou) was not found or was not readable 百度之后说是apktool版本2.0以上,编译命令变了 ...