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);//关闭连接
我得不断学习,才会知道这个地方到底要写什么。