php杂记(一)
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杂记(一)的更多相关文章
- [Erlang 0118] Erlang 杂记 V
我在知乎回答问题不多,这个问题: "对你职业生涯帮助最大的习惯是什么?它是如何帮助你的?",我还是主动回答了一下. 做笔记 一开始笔记软件做的不好的时候就发邮件给自己, ...
- Ubuntu杂记——Ubuntu下用虚拟机共享上网
由于最近把自己电脑环境换成了Ubuntu,但学校的网络是电信的闪讯,大学里用过的人都知道这货有多坑,而且没有Linux客户端,上网都是问题,怪不得国内用Linux的人那么少,特别是高校的学生(让我瞎逼 ...
- 一个ubuntu phper的自我修养(杂记)
ubuntu使用杂记 1.flatabulous安装使用. flatabulous是一个ubuntu图标主题. 使用它,必须得安装tweak插件. sudo add-apt-repository pp ...
- 有关Java的日期处理的一些杂记
在企业应用开发中,经常会遇到日期的相关处理,说实话JDK自带的日期方法很难用.就我个人而言我一般都会采用joda-time来替代JDK自身的日期. 这篇文章是杂记,所以写的比较零散,希望大家不要见怪. ...
- 分布式系统之CAP理论杂记[转]
分布式系统之CAP理论杂记 http://www.cnblogs.com/highriver/archive/2011/09/15/2176833.html 分布式系统的CAP理论: 理论首先把分布式 ...
- Redis杂记
参考资料: Redis 教程 | 菜鸟教程 : http://www.runoob.com/redis/redis-tutorial.html Redis快速入门 :http://www.yiibai ...
- MySQL杂记
参考资料: w3school SQL 教程 : http://www.w3school.com.cn/sql/index.asp 21分钟 MySQL 入门教程 : http://www.cnblo ...
- Android之开发杂记(一)
1.cygwin环境变量设置 可在Cygwin.bat 中设置 set NDK_ROOT=P:/android/android-ndk-r8e 或者在home\Administrator\.bash_ ...
- ios程序开发杂记
ios程序开发杂记 一.程序构建 与一般的程序构建无太大区别,都是源文件编译链接这一套,通常是在mac上做交叉编译,也就是利用xcode里带的ios编译工具集去生成arm架构的ios程序(或是x86的 ...
- [Flask]学习杂记--模板
这个学习杂记主要不是分享经验,更多是记录下falsk的体验过程,以后做东西在深入研究,因为django之前用的时间比较长,所以很多概念都是一看而过,做个试验了解下flask的功能. flask中使用是 ...
随机推荐
- MS SQLServer 批量附加数据库 分类: SQL Server 数据库 2015-07-13 11:12 30人阅读 评论(0) 收藏
************************************************************ * 标题:MS SQLServer 批量附加数据库 * 说明:请根据下面的注释 ...
- 防止sql注入和sqlmap介绍
sql注入问题从WEB诞生到现在也一直没停过,各种大小公司都出现过sql注入问题,导致被拖库,然后存在社工库撞库等一系列影响. 防止sql注入个人理解最主要的就一点,那就是变量全部参数化,能根本的解决 ...
- apache自带ab压测
./ab -k -n100000 -c100 http://localhost/index.php -k表示保持连接keep-alive -n表示请求数 -c表示并发数 (总结)Web性能压力测试工具 ...
- Python 学习手册, char 14 - 15
Char 14 迭代器和解析器 可迭代的 : 支持iter的一个对象 迭代器 : iter 所返回的一个支持next(I)的对象 Python迭代工具会自动调用这些函数,我们也可以手动地应用迭代协议 ...
- jackrabbit学习笔记(1)
http://dove19900520.iteye.com/blog/1654346 看的这个文章照着来的,遇到了一些问题,记录一下 运行报这个错:NamespaceException: wiki: ...
- 揭开Java IO流中的flush()的神秘面纱
大家在使用Java IO流中OutputStream.PrintWriter --时,会经常用到它的flush()方法. 与在网络硬件中缓存一样,流还可以在软件中得到缓存,即直接在Java代码中缓存. ...
- 20161022 NOIP模拟赛 T1 解题报告
旅行者问题 [问题描述] lahub是一个旅行者的粉丝,他想成为一个真正的旅行者,所以他计划开始一段旅行.lahub想去参观n个目的地(都在一条直道上).lahub在起点开始他的旅行.第i个目的地和起 ...
- javaFx:使用弹出对话框 Alert
javaFx8 自带的对话框非常好用,类似的使用方式如下: /** * 弹出一个通用的确定对话框 * @param p_header 对话框的信息标题 * @param p_message 对话框的信 ...
- 使用canal分析binlog(一) 入门
canal介绍 canal是应阿里巴巴存在杭州和美国的双机房部署,存在跨机房同步的业务需求而提出的.早期,阿里巴巴B2B公司因为存在杭州和美国双机房部署,存在跨机房同步的业务需求.不过早期的数据库同步 ...
- 在iPhone上同时关闭语音控制和siri的方法
分享 步骤及要点:1.在设置里打开siri.语音控制就自动关闭了.2.在siri里的"仅语言拨号"语言项里选择"土耳其文"或者"阿拉伯文". ...