PHP

PHP学习笔记

Posted by Tattoo on 2019-03-27
Estimated Reading Time 3 Minutes
Words 914 In Total
Viewed Times

Ⅰ.
单引号时,PHP引擎不会对字符串中的变量进行解析.
如果字符串中包含变量,也只输出变量名,而不会输出变量值;

双引号则会对字符串中的变量进行解析
如果字符串中包含变量,则会对变量进行解析而输出变量的值;

当字符串中不包含变量时,尽量用单引号

Ⅱ.
在解析双引号中的变量时,解析器判定变量名的规则是:
自$开始,从左到右其后所有的字符(包括中文)均视为变量名,一直到非法的字符为止.
(非字母、数字、下划线和中文的字符,如.</>等)

III.
布尔型的变量用echo输出时, 值为true则输出’1’;值为false则输出空串.
所以要调试输出布尔型变量的值,应该使用var_dump()函数

IV.
break结束离当前break语句最近的for或while循环;
continue则结束本轮循环,开始下一轮循环;
exit则终止整个php程序,exit后的所有代码都不再执行

V.
unset($array[$key])
要注意的是,在用unset()删除给定的数组元素时,如果是索引数组,则元素删除后key将不再连续

Ⅵ.
在foreach循环内更改数组元素的值的方法是重新给数组元素赋值

1
2
3
4
5
6
7
foreach($array as $key=>$value)
{
if(……)
{
$array[$key]=……;
}
}

Ⅶ.
判断数组是否存在键为给定值的元素

1
isset($array[$key])

Ⅷ.
二维数组用法

1
2
3
4
5
6
7
8
9
foreach($array as $key=>$value)		//$array数组名
{
$key …;
foreach($value as $k=>$v) //$value元素名
{
/*$value也是一个数组*/
……
}
}

Ⅸ.
控件设计的关键是其name和value属性
控件的值要提交到服务器,则该控件必须定义name属性
没有name属性的控件的值不会被提交到服务器
表单中有些控件的值通常不需要提交,如submit、reset按钮等,故而这类按钮通常不定义name属性

Ⅹ.
move_uploaded_file 函数
在处理表单的php文件执行完后自动被删除
因此要在处理表单数据的php文件中将该文件移到指定的目录并重新命名

1
bool move_uploaded_file (string $filename,string $destination)

函数检查服务器临时存储目录中的$filename 是否是合法的上传文件,
如果是则将其移动为由$destination所指定的文件
$destionation是一个字符串,包括路径和文件名两部分,可以使用相对路径(以当前php文件为基准)

Ⅺ.
substr()经常与strpos()函数配合使用:将strpos()函数的返回值作为substr()的$start或$length参数
substr(string $str,int $start[,int $length])
strpos(string $str,string $target,[$offset])

Ⅻ.
首先执行sql语句是:

1
set names utf8

连接MySQL服务器

1
$conn=mysqli_connect(server,user,pwd[,db])

执行SQL语句

1
$result=mysqli_query($conn,$sql)

获取执行insert、delete和update语句所影响到的行数

1
mysqli_affected_rows($conn)

获取最后一次执行的insert语句所插入记录的自增型字段的值

1
mysqli_insert_id($conn)

以关联数组的形式获取结果集中的所有记录

1
mysqli_fetch_all($result,MYSQLI_ASSOC)

以关联数组的形式从结果集中获取一行

1
mysqli_fetch_assoc($result)

XIII.
PHP+MySQL开发主要有以下五处涉及到字符编码,建议统一设定为utf8:
编辑器:在保存源文件(.php和.html)时使用的编码
html标记:<meta charset=”utf-8”>的设置
php头函数:header(‘content-type:text/html;charset=’utf-8’);
创建数据库设定的字符集:create database dbname charset=utf8
php存取中文数据库:mysqli_query(‘set names utf8’); 的设置


If you like this blog or find it useful for you, you are welcome to comment on it. You are also welcome to share this blog, so that more people can participate in it. If the images used in the blog infringe your copyright, please contact the author to delete them. Thank you !