注意:这是一篇比较基础的php面试题的

一、填空题

1.PHP是用什么语言编写的

基于c语言的

2.目前PHP的最高版本是

php 5.4版本

3. LAMP的全称是

Linux+Apache+Mysql+Perl/PHP/Python

4. PHP的三种注释方式

(1)

<?php

 echo "www.phpddt.com";  //单行注释

?>

(2)

<?php

/*

多行注释

*/

 echo "www.phpddt.com";

?>

(3)

<?php

/*

*块状注释

*/

 echo "www.phpddt.com";

?>

5. PHP使用什么符号定义变量

$

二、简答题

1. 请列出PHP的8种数据类型。

四种标量类型:

  boolean (布尔型)

  integer (整型)

  float (浮点型, 也称作 double)

  string (字符串)

  两种复合类型:

  array (数组)

  object (对象)

  最后是两种特殊类型:

  resource (资源)

  NULL (NULL)

2.PHP中有几种形式装载代码,并列举,以包含同目录下的Config.php文件为例?

require('Config.php');

include('Config.php');

require_once('Config.php');

include_once('Config.php');

3. PHP中===表示什么意思?

值和数据类型都相同

4.PHP对象中可以使用哪几种访问修饰符,默认修饰符是什么?

public protected private

三、设计题

1.$I=2,编程实现判断$I是否为整型,是则输出$I,不是则输出“非整型变量”?

太简单了,不想写。。。

2.$m = “ MY name IS PHP ” 编程实现将$m中字符串前后的空格以及中间的空格去掉,并全部转换成小写字母,最后输出$m和$m中字母的个数?

 

 



<?php
$m = " MY name IS PHP ";
$m = str_replace(" ","",$m);
$m = strtolower($m);
echo $m;
echo strlen($m);?>


3. 写一个函数,尽可能高效的,从一个标准 url 里取出文件的扩展名

例如: http://www.phpddt.com.cn/abc/de/fg.php?id=1 需要取出 php 或 .php

 



<?php 
$url = 'http://www.phpddt.com.cn/abc/de/fg.ph?id=1';
function getExt($url){
$parse_url = parse_url($url);
$path = $parse_url['path'];
$pos = strrpos($path,'.');
return !$path || !$pos ? NULL :
substr($path,$pos);}
echo getExt($url);?>


 

4.$m = “woxihuanphp”,编程实现:将字符串分割为单个字符存放到一个数组中,并打印数组?

 



<?php
$str= "abcd";
for($i=0;$i <strlen($str);$i++)
{ $array[]=substr($str,$i,1);
}
print_r($array);
?>


 

5.$username = “4a_c4_5”,编程实现:检查$username是否符合需求,用户名以字母或下划线开头,只能是字母数字下划线组成?

6. 在PHP中,heredoc是一种特殊的字符串,它的结束标志必须?

echo<<< EOT开始到"EOT;"结束

7.用类编程实现:Stu类中有两个私有属性,name和sex ,有两个公有方法,SetName()和SetSex()参数自定,方法可实现对两个私有属性进行修改。在实例化类的时候要求对私有属性能进行初始化。

 

  1. <?php
  2. classStu{
  3. private $name;
  4. private $sex;
  5. function __construct($name="",$sex=""){
  6. $this->name = $name;
  7. $this->sex = $sex;
  8. }
  9. functionSetName($name){
  10. $this->name = $name;
  11. }
  12. functionSetSex($sex){
  13. $this->sex = $sex;
  14. }
  15. }
  16. //实例化
  17. $A =newStu("小红","男");
  18. ?>

 

8. 写一个函数,算出两个文件的相对路径

如 $a = ‘/a/b/c/d/e.php’;

$b = ‘/a/b/12/34/c.php’;

计算出 $b 相对于 $a 的相对路径应该是 http://www.cn s.com/c/d将()添上

 

  1. <?php
  2. function getRelativePath($a,$b){
  3. $a_url = array(dirname($a));
  4. $b_url = array(dirname($b));
  5. $a_arr = explode('/',$a_url[0]);
  6. $b_arr = explode('/',$b_url[0]);
  7. $len = count($a_arr);
  8. $art1 ='';
  9. $art2 ='';
  10. for($i=1;$i<$len;$i++){
  11. if($a_arr[$i]<>$b_arr[$i]){
  12. $art1.='../';
  13. $art2.= $a_arr[$i].'/';
  14. }
  15. }
  16. return $art1.$art2;
  17. }
  18. $a ='/a/b/c/d/e.php';
  19. $b ='/a/b/12/34/c.php';
  20.  
  21. echo getRelativePath($a, $b);//http://www.cn s.com/c/d/
  22. ?>

 

 

 


 

作者:创想中国