PHP笔记——java程序员看懂PHP程序
PHP笔记——java程序员看懂PHP程序
- php是一种服务器端脚本语言,类型松散的语言。
- <?php ?> xml风格
<script language=”php”></script> 脚本风格
<? ?> 简短风格
<% %> ASP风格
以;结尾;
- 注释:
a) //
b) #
c) /* */
- 变量是存储数据的容器,对大小写敏感。当变量非常长时,用定界符<<<.
$k=<<<str
…
str;
以为PHP为类型松散的语言,所以变量在声明的时候没有具体的类型关键词。
统一用$开头 + 变量名
1、 必须字母或者_开头
2、 只能包含字母数字字符和下划线
3、 对大小写敏感
- 变量可以在PHP脚本任意位置声明。
- 被引用/使用的脚本——作用域
a) local(局部)
b) global(全局)
c) static(静态)
函数之外声明的变量拥有global作用域,只能在函数之外进行访问。
函数内部声明的变量拥有local作用域,只能在函数之内进行访问。
函数内部调用global变量需要①在内部用global关键词进行声明;②$GLOBAL[index]中存储了所有的全局变量,可以通过超全局变量$GLOBAL[index]中获取。
- $GLOBAL[index]这个数组在函数内可以访问,并能够用于直接更新全局变量。
- 通常,当函数完成执行之后,会删除所有变量。假若不需要删除,即需要在首次声明的时候使用static
- 常量无$,在脚本中无法改变其值。通过define(“常量的名称”,”常量的值”,”常量名是否对大小写敏感”);true(大小写相同)不敏感,false敏感。在类里定义常量用const关键字。
根据使用位置而改变的常量,成为魔术常量。
1) __FILE__ 当前文件夹
2) __LINE__ 当前行数
3) __FUNCTION__ 当前函数名
4) __CLASS__ 当前类名
5) __METHOD__ 当前对象的方法名
- 打印:echo 能够输出一个以上的字符串。
print 只能够输出一个字符串,并始终返回1。
- 字符串长度strlen();检索字符串内指定的字符或文本strpos();字符串连接用“.”,“.”后跟数字必须加空格。
- 超全局变量:
a) $GLOBALS 引用全局作用域中的全部变量。
b) $_SERVER 保存关于报头、路径和脚本位置的信息。
c) $_REQUEST 用于收集HTML表单提交的数据。
d) $_POST 广泛用于收集提交method=”post”的HTML表单后的表单数据,也常用与传递变量。
e) $_GET 用于收集提交HTML表单(method=”get”)之后的表单数据,也可以收集URL中发送的数据。
f) $_FILES 从客户计算机向远程服务器上传文件。
g) $_ENV 获取服务器端的环境参数。(variables_order=EPGCS)
h) $_COOKIE 用于取回cookie的值。
i) $_SESSION 用于存储有关用户会话的信息,或者更改用户会话的设置。
- include/require语句会获取指定文件中存在的所有文本/代码/标记,并复制到使用include/require语句的文件中。
a) require(静态加载),当出现错误的时候,会生成致命错误,并停止脚本。
b) include(动态加载),当出现错误的时候,只生成警告,脚本会继续执行。
c) require_once/include_once 同一个页面只包含一次。
- 数组处理:$数组名[‘键名’]来初始化数组;也可以通过Array()函数来创建数组。
count()返回数组的长度。
数组遍历:foreach循环,用count()得到数组的长度然后用for;list()语言结构循环,仅仅用于默认数字索引;each()返回的是键值对。
while(list($key,$value)=each($array)){
}
foreach($array as $key => $value){
}
- PHP中类对象用class关键字来声明,类的属性也有作用域,不指定作用域可以用var进行修饰,成员方法与函数的区别在于可以用关键字进行修饰。构造函数__constract,析构函数__destruct
- “::” 作用域操作符,可以在不实例化的情况下调用类中的常量,变量和方法;
“=>” 数组成员访问符号;
“->” 对象成员访问符号;
“=&” 引用(起别名);
“=” 赋值。
- $变量名 = new 类名([参数]); //实例化;
$变量名->成员属性 = 值; //为属性赋值;
$变量名->成员属性; //取得属性值;
$变量名->成员方法; //使用方法;
- mysql:一般用conn.php封装,然后用require到需要的页面。
1) $conn = mysql_pconnect(“localhost”,”root”,””) or die(mysql_error());
2) mysql_select_db(“数据库名”,$conn);//连接到指定的数据库。
3) mysql_query(“set names utf8”);
4) $sql = “”;
5) $resultSet = mysql_query($sql) or die (“Invalid query : “.mysql_error);//返回sql语句结果集;
6) while($v = mysql_fetch_array($resultSet)){
7) echo “字段名:”.$v[‘title’];
8) }
9) mysql_free_result($resultSet);//关闭结果集;
10) mysql_close($conn);//关闭连接
PHP笔记——java程序员看懂PHP程序的更多相关文章
- 从士兵到程序员再到SOHO程序员 (二)
原文地址: http://blog.huhao.name/blog/2013/12/13/become-a-freelancer-2/ 作者:胡皓 Blog:From Soldier to Progr ...
- 从士兵到程序员再到 SOHO 程序员 (三) - 游击战与阻力
从士兵到程序员再到 SOHO 程序员 (三) - 游击战与阻力 原文地址:http://blog.huhao.name/blog/2014/03/01/become-a-freelancer-3/ 作 ...
- 一个程序员对微信小程序的看法
我们公司用两周的时间开发了一款微信小程序,叫<如e支付>,大家可以去体验一下.由于接口都是写好的,所以开发起来很快.我将从4个不同的角度来介绍我对微信小程序的理解. 1.技术的角度 ...
- 找工作的程序员必懂的Linux
一.为什么要学习Linux 首先,我想先说一下:“为什么要学习Linux”?Linux 是什么,它是一款操作系统,是一个支持多用户.多任务.支持多线程和多CPU的操作系统:32位和64位的硬件可以在L ...
- 一个C#程序员学习微信小程序的笔记
客户端打开小程序的时候,就将代码包下载到本地进行解析,首先找到了根目录的 app.json ,知道了小程序的所有页面. 在这个Index页面就是我们的首页,客户端在启动的时候,将首页的代码装载进来,通 ...
- StackOverflow程序员推荐:每个程序员都应读的30本书
“如果能时光倒流,回到过去,作为一个开发人员,你可以告诉自己在职业生涯初期应该读一本,你会选择哪本书呢?我希望这个书单列表内容丰富,可以涵盖很多东西.” 很多程序员响应,他们在推荐时也写下自己的评语. ...
- 【转】StackOverflow程序员推荐:每个程序员都应读的30本书
“如果能时光倒流,回到过去,作为一个开发人员,你可以告诉自己在职业生涯初期应该读一本,你会选择哪本书呢?我希望这个书单列表内容丰富,可以涵盖很多东西.” 很多程序员响应,他们在推荐时也写下自己的评语. ...
- 从士兵到程序员再到SOHO程序员
2013年9月13日,我从就职了一年半的S公司正式离职,并开始了我梦寐以求的“SOHO程序员”之路. 这对于我来说,是一次人生道路上的重要选择,在这里,我想分享一下我是如何选择了这条道路的,同时也是对 ...
- [No000023]为何没有更多人从事程序员的工作?程序员常有,优秀程序员不常有!
成为优秀的程序员是极其困难的,并且这个过程不可能一蹴而就. 我们不可能期待去种一些树,然后一夜间收获有着2000年树龄的红杉树,无论其需求有多大. 人格特点 一个人首先得是自学者来学习编程.仅仅是超过 ...
随机推荐
- Android 4.0源码目录结构
转:http://blog.csdn.net/xiangjai/article/details/9012387 在学习Android的过程中,学习写应用还好,一开始不用管太多代码,直接调用函数就可以了 ...
- JAVA基础学习之throws和throw的区别、Java中的四种权限、多线程的使用等(2)
1.throws和throw的区别 throws使用在函数外,是编译时的异常,throw使用在函数内,是运行时的异常 使用方法 public int method(int[] arr) throws ...
- PHP多文件上传类
<?php class Upload{ var $saveName;// 保存名 var $savePath;// 保存路径 var $fileFormat = array('gif','jpg ...
- UVALive 6887 Book Club 最大流解最大匹配
题目连接: https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8&page=show ...
- 【bzoj2002】[Hnoi2010]Bounce 弹飞绵羊 分块
[bzoj2002][Hnoi2010]Bounce 弹飞绵羊 2014年7月30日8101 Description 某天,Lostmonkey发明了一种超级弹力装置,为了在他的绵羊朋友面前显摆,他邀 ...
- BestCoder 1st Anniversary B.Hidden String DFS
B. Hidden String Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://bestcoder.hdu.edu.cn/contests/co ...
- Android loading进度条使用简单总结
在这里,总结一下loading进度条的使用简单总结一下. 一.说起进度条,必须说说条形进度条,经常都会使用到嘛,特别是下载文件进度等等,还有像腾讯QQ安装进度条一样,有个进度总给人良好的用户体验. 先 ...
- SU suacor命令学习
前段时间事情忙,今天才更新.
- SU Demos-02Filtering-03Sudipfilt
不足之处,欢迎各位博友批评指正. 进入目录,依照惯例先看Readme, 第一个脚本, 下面是运行结果: 第二个脚本: 运行结果如下: 第三个脚本: 运行结果:
- SPOJ287 Smart Network Administrator(最大流)
题目大概是说,一个村庄有n间房子,房子间有m条双向路相连.1号房子有网络,有k间房子要通过与1号房子相连联网,且一条路上不能有同样颜色的线缆,问最少要用几种颜色的线缆. 二分枚举颜色个数,建立容量网络 ...