糖尿病康复,内容丰富有趣,生活中的好帮手!
糖尿病康复 > 高级php面试题及答案 高级php面试题及部分答案

高级php面试题及答案 高级php面试题及部分答案

时间:2021-02-01 18:44:09

相关推荐

高级php面试题及答案 高级php面试题及部分答案

在网上看到一些高级php 的面试题目。。

闲来无事,搞了一些答案。。。可能不是很全面,留这以后备用吧。

一. 基本知识点

1.1 HTTP协议中几个状态码的含义:503 500 401 403 404 200 301 302。。。

200 : 请求成功,请求的数据随之返回。

301 : 永久性重定向。

302 : 暂时行重定向。

401 : 当前请求需要用户验证。

403 : 服务器拒绝执行请求,即没有权限。

404 : 请求失败,请求的数据在服务器上未发现。

500 : 服务器错误。一般服务器端程序执行错误。

503 : 服务器临时维护或过载。这个状态时临时性的。

1.2 Include require include_once require_once 的区别.

处理失败方式不同:

require 失败时会产生一个致命级别错误,并停止程序运行。

include 失败时只产生一个警告级别错误,程序继续运行。

include_once/require_once和include/require 处理错误方式一样,

唯一区别在于当所包含的文件代码已经存在时候,不在包含。

1.3 PHP/Mysql中几个版本的进化史,比如mysql4.0到4.1,PHP 4.x到5.1的重大改进等等。

1.4 HEREDOC介绍

一种定义字符串的方法。

结构:

<<

然后是一个新行。接下来是字符串 本身,

最后要用前面定义的标识符作为结束标志(单独一行)

注意:

标识符的命名也要像其它标签一样遵守PHP的规则:

只能包含字母、数字和下划线,并且必须以字母和下划线作为开头

1.5 写出一些php魔幻(术)方法;

__construct() 实例化类时自动调用。

__destruct() 类对象使用结束时自动调用。

__set() 在给未定义的属性赋值的时候调用。

__get() 调用未定义的属性时候调用。

__isset() 使用isset()或empty()函数时候会调用。

__unset() 使用unset()时候会调用。

__sleep() 使用serialize序列化时候调用。

__wakeup() 使用unserialize反序列化的时候调用。

__call() 调用一个不存在的方法的时候调用。

__callStatic()调用一个不存在的静态方法是调用。

__toString() 把对象转换成字符串的时候会调用。比如 echo。

__invoke() 当尝试把对象当方法调用时调用。

__set_state() 当使用var_export()函数时候调用。接受一个数组参数。

__clone() 当使用clone复制一个对象时候调用。

1.6 一些编译php时的configure 参数

–prefix=/usr/local/php php安装目录

–with-config-file-path=/usr/local/php/etc 指定php.ini位置

–with-mysql=/usr/local/mysql mysql安装目录,对mysql的支持

–with-mysqli=/usr/local/mysql/bin/mysql_config mysqli文件目录,优化支持

–enable-safe-mode 打开安全模式

–enable-ftp 打开ftp的支持

–enable-zip 打开对zip的支持

–with-bz2 打开对bz2文件的支持

–with-jpeg-dir 打开对jpeg图片的支持

–with-png-dir 打开对png图片的支持

–with-freetype-dir 打开对freetype字体库的支持

–without-iconv关闭iconv函数,种字符集间的转换

–with-libxml-dir 打开libxml2库的支持

–with-xmlrpc 打开xml-rpc的c语言

–with-zlib-dir 打开zlib库的支持

–with-gd 打开gd库的支持

更多可以使用 ./configure help 查看

1.7 向php传入参数的三种方法。

/*

* 方法一 使用$argc $argv

* 在命令行下运行 /usr/local/php/bin/php ./getopt.php -f 123 -g 456

*/

// if ($argc > 1){

// print_r($argv);

// }

/**

* 运行结果

*

sync@MySUSE11:~/web_app/channel3/interface> /usr/local/php/bin/php ./getopt.php -f 123 -g 456

Array

(

[0] => ./getopt.php

[1] => -f

[2] => 123

[3] => -g

[4] => 456

)

*/

/*

* 方法二 使用getopt函数()

* 在命令行下运行 /usr/local/php/bin/php ./getopt.php -f 123 -g 456

*/

// $options = "f:g:";

// $opts = getopt( $options );

// print_r($opts);

/**

* 运行结果

*

sync@MySUSE11:~/web_app/channel3/interface> /usr/local/php/bin/php ./getopt.php -f 123 -g 456

Array

(

[f] => 123

[g] => 456

)

*/

相关报道:

用法:首先让指定的Activity实现Android view OnGestureListener,然后在你需要调用GestureDetector的View上,添加onTouchListener,之后setLongClickable(true)即可 更多

URL是什么,在搜索引擎还没有出现的时候,用户访问网站只有在浏览器中输入网站的域名网址或IP地址才能访问相应的网站,而其中的域名网址即是所谓的网站URL。随着搜索引擎的出现,绝大多数网民都不会去记网站的IP地址,甚至连域名都很少去记,只要在搜索引擎 更多

如果觉得《高级php面试题及答案 高级php面试题及部分答案》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。