
PHP引用变量
什么是引用变量?如何定义引用变量?
引用意味着用不同的名字访问同一个内容定义引用变量:使用&引用变量的工作原理
普通变量的工作原理
0,
引用变量的工作原理
0,
注意:
1、引用变量一旦定义,此变量永远是引用变量,不可能再变回普通变量
2、引用变量可以修改引用的值,例如:
$a = 'a';
$c = 'c';
$b = &$a;
$b = &$c; //修改引用常量及数据类型
字符串的定义方式及各自区别
单引号、双引号、heredoc、newdoc单引号:不能解析变量,只能解析单引号(\')和反斜线(\\)转义字符,比双引号效率高//heredoc定义数据类型
浮点数:不能用于运算/比较运算,因为浮点数不是精确的
FALSE七种情况:0、0.0、'0'、''、NULL、false、array()
超全局数组(九种):
$GLOBALS、$_GET、$_POST、$_SERVER、$_SESSION、$_COOKIE、$_FILES、$_ENV、$_REQUEST
//$GLOBALS包含其他8种
//$_REQUEST包含$_GET、$_POST和$_COOKIE
$_SERVER['REQUESR_URI']与$_SERVER['PATH_INFO']区别
http://localhost/aaa/index.php/foo/bar.html?p=222&q=333
$_SERVER['QUERY_STRING'] = "p=222&q=333";
$_SERVER['REQUEST_URI'] = "/aaa/index.php/foo/bar.html?p=222&q=333";
$_SERVER['SCRIPT_NAME'] = "/aaa/index.php";
$_SERVER['PHP_SELF'] = "/aaa/index.php";
$_SERVER['PATH_INFO'] = ‘/foo/bar.html’常量
2种定义方式:define()与const
define()函数预定义常量
__FILE__、运算符
PHP错误运算符
@
当将其放置在一个PHP表达式之前,该表达式可能产生的任何错误信息都将被忽略掉
运算符的优先级
运算符优先级
递增/递减 > ! > 算术运算符 > 大小比较 > (不)相等比较 > 引用 > ^ > | > 逻辑与&& > 逻辑或|| > 三目 > 赋值 > and > xor > or
<?php if($a = 3 > 0 && $b = 3 > 0){echo 'true';
}else{echo 'false';
}?>// 相当于if($a = ((3 > 0) && ($b = 3 > 0)))比较运算符
==与===区别
FALSE七种情况)逻辑运算符
短路作用:逻辑与&& > 逻辑或|| > 三目 > 赋值 > and > xor > or
递增/递减运算符
1流程控制
PHP遍历数组的三种方式及各自区别
1.for循环(while/do...while)2.foreach循环3.while、each()、list()组合
区别:
for循环:只能遍历索引数组
foreach循环:能遍历关联数组和索引数组
while、each()、list()组合:能遍历关联数组和索引数组
foreach循环遍历数组前,会对数组进行reset()操作
while、each()、list()组合则不会进行reset()操作PHP分支结构
if...elseif...原则:可能性大的放在前面switch...case...与 if 区别: 判断参数的数据类型只能是整形、浮点、字符串
switch...自定义函数及内部函数
变量作用域
大部分变量只有一个单独的范围,这个单独范围跨度包含了include与requires的文件
如果在非类中引入文件,该文件内部可以使用全局变量和函数
如果在类中引入文件,该文件内部可以使用函数、类的方法、类的属性函数/方法传参
传参分2种:
1、值传递
2、引用传递(函数修改该值,传递的参数必须是变量)
//引用传递函数定义函数返回值
可以返回任意数据类型的值省略return 默认返回NULL,如果要返回多个值请使用数组
2种方式返回让函数内部修改外部变量的值,使用引用传参让外部变量修改函数内部变量的值,使用引用返回
引入外部文件
引入的代码将继承引入位置的作用域,即使用include或require位置可以使用的变量
include与require区别
系统内置函数
时间日期函数date()、IP处理函数ip2long()、打印处理函数print()、序列化及反序列化函数serialize()、字符串处理函数trim()、数组处理函数array_rande()、正则表达式
正则表达式作用(四种)
分割、查找、匹配、替换作用对象:字符串、字符串、字符串(重要的事情记3遍)
正则表达式的组成部分
hash符(向后引用
题目:把字符串 'abc' 替换为 'abc' 如何使用正则做到?
'abc';贪婪模式
题目:把字符串 'abcdef' 替换为 'abcdef' 如何使用正则做到?
'abcdef';注意:默认是贪婪模式正则表达式PHP函数
preg_match()、preg_match_all()、preg_replace()、preg_split()
中文匹配问题
中文分utf-8与gbk两种编码,他们正则表达式不同文件及目录处理
打开文件函数:
fopen()
用于打开一个文件,打开时需要指定一个打开模式打开模式:r/r+、w/w+、x/x+、a/a+、b、t
r+ 追加写 w 覆盖写
读取文件函数:
fread()/fgets()/fgetc()
fgets()读取一行fgetc()读取字符
写入文件函数:
fwrite()/fputs()关闭文件函数:
fclose()不需要fopen()都能操作文件
file_put_contents()file_get_contents()
访问远程文件(不推荐开启)
开启allow_url_fopen() ,http协议只能使用只读,ftp协议可以只能只读或只写目录操作函数
目录名称:basename()、dirname()、pathinfo()目录读取:opendir()、readdir()、closedir()、rewinddir()目录删除:rmdir()目录创建:mkdir()
目录遍历
//遍历会话控制
会话控制的三种实现
1如果禁用cookie后,该如何实现会话控制?
只能通过URL把SessionID传过去<a href="next.php?<?php echo session_name().'='.session_id(); ?>">下一页面向对象
访问控制符
public、protected、private
网络协议
GET与POST区别
1四种数据编码
开发环境及PHP配置
版本控制软件

PHP运行原理
主要了解 CGI、FastCGI、PHP-FPMCGI:是一种通讯协议(已经过时,性能低下)PHP 有5种PHP运行模式:链接1、以
2、以FastCGI模式运行PHP
php54是之前是一种关系,php54之后另一种关系。
php54之前,php-fpm(第三方编译)是管理器,php-cgi是解释器
php54之后,php-fpm(官方自带),master 与 pool 模式。php-fpm 和 php-cgi 没有关系了。php-fpm又是解释器,又是管理器
3、以Apache模块模式运行PHPPHP常见配置
PHP 数组排序

End
来源:https://segmentfault.com/a/1190000011335262

该博客围绕PHP编程展开,涵盖引用变量、常量及数据类型、运算符、流程控制等多方面知识。介绍了正则表达式的作用、组成,还提及文件及目录处理、会话控制、面向对象等内容,同时讲解了网络协议、开发环境配置和数组排序等。


被折叠的 条评论
为什么被折叠?



