zoukankan      html  css  js  c++  java
  • php面试题(三)

    注意:这是一篇比较基础的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.cnblogs.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.cnblogs.com/c/d/
      22. ?>
  • 相关阅读:
    linux磁盘挂载
    3个方法解决百度网盘限速 (2018-07-20)
    mysql状态分析之show global status
    Cgroups子系统介绍
    Go语言 关键字:defer
    Go语言 map的实现
    Go语言 基本类型
    MySQL 监控指标
    sshpass的使用方法
    C++11 std::ref使用场景
  • 原文地址:https://www.cnblogs.com/58top/p/2943031.html
Copyright © 2011-2022 走看看