您的位置 >>> 星想互联 >>> 编程技术 >>> PHP基础
PHP语言基础
点击数:353  发布时间2020-06-06 17:22:23

基本语法

1. foreach, for , while 循环访问数组,哪个效率最高?为什么?

foreach是PHP内部实现,而while是通用的循环结构。所以,在通常应用中foreach简单,而且效率高

2. php 读取文件的方式有几种? 都有什么区别?

file_get_contents — 将整个文件读入一个字符串,不需要fopen打开

file — 把整个文件读入一个数组中,不需要fopen打开

fgets — 从文件指针中读取一行,string fgets ( resource$handle[, int$length] )

fread — 读取文件(可安全用于二进制文件),string fread ( resource$handle, int$length)

fgetc — 从文件指针中读取字符,string fgetc ( resource$handle)

3.  PHP empty、isset、isnull的区别

empty

如果 变量 是非空或非零的值,则 empty() 返回FALSE。换句话说,""、0、"0"、NULLFALSE、array()、var $var、未定义; 以及没有任何属性的对象都将被认为是空的,如果 var 为空,则返回TRUE

isset

如果 变量 存在(非NULL)则返回TRUE,否则返回FALSE(包括未定义)。变量值设置为:null,返回也是false;unset一个变量后,变量被取消了。注意,isset对于NULL值变量,特殊处理。

is_null

检测传入值【值,变量,表达式是否是null,只有一个变量定义了,且它的值是null,它才返回TRUE .其它都返回FALSE 【未定义变量传入后会出错!】.

4. $a=null; $b=NULL, $a==$b和$a===$b的结果是什么

true,true

5. a='',   a==null,a===null  和 is_null($a)结果是什么?

true,false,false

6. 一个多维数组,请写一个递归函数输出所有内容并返回数组内元素的总个数(static 变量);

7. 删除数组中的元素的方法有哪些?它们的优缺点是什么?(uset,array_splice(自动下标,会重排,uset不会))

8. PHP中的函数区分大小写吗?

php中变量名是区分大小写的,而函数名与类名是不区分的

9. if(){} esle if(){}  ;if(){} esleif(){} ;if(){} Esle (){}哪个对?

10. php 有几个魔术方法,都有什么用?(__constraction,__set,__get,__call,__callStatic, __construct .....)

11. empty和unset有什么区别

12. function unset_example(){

$a = 'abc';

$b = &$a;

unset($a);

echo $b;

}

unset_example(); // echo what?

13.

14. foo()和@foo()有什么区别

15. php中object和array的相互转化

16. 用php写一个singleton

PHP高级

1.  类的静态属性和静态方法,需要通过什么样的方式去访问?(对象可以访问静态方法,不能访问静态成员?)

2. this ,self和parent的区别是什么?

3. 定义常量的方式有几种?都有什么区别? (define和const的区别是什么?)

4. PDO是什么?有什么作用?

5. php 与 ngixn 和apache之间关系是什么?

6. 如何实现php的数组?

7. include和require有什么异同点,还有哪些函数可以加载外表类库com_load, dotnet_load

8. MVC, php框架,route


来源:咸宁网站建设