A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 沈唁 于 2017-8-11 12:01 编辑

      本帖整理的10个问题,看似简单,但是每个背后都涵盖了一个或几个大家容易忽视的基础知识点,希望能够帮助到你的面试和平时工作。

Q1第一个问题关于 弱类型

  1. <?php

  2. $str1 = 'yabadabadoo';
  3. $str2 = 'yaba';
  4. if (strpos($str1,$str2)) {  
  5.     echo "\"" . $str1 . "\" contains \"" . $str2 . "\"";
  6. } else {
  7.     echo "\"" . $str1 . "\" does not contain \"" . $str2 . "\"";
  8. }
复制代码



正确运行的输出结果:
游客,如果您要查看本帖隐藏内容请回复



Q2 :下面的输出结果会是怎样?

  1. <?php

  2.         $x = 5;
  3.         echo $x;  
  4.        echo "<br />";  
  5.        echo $x+++$x++;  
  6.        echo "<br />";  
  7.        echo $x;  
  8.        echo "<br />";  
  9.        echo $x---$x--;  
  10.        echo "<br />";  
  11.         echo $x;  
复制代码

实际运行结果是:
游客,如果您要查看本帖隐藏内容请回复


Q3:关于变量的引用;

  1. <?php

  2.       $a = '1';
  3.       $b = &$a;
  4.       $b = "2$b";
复制代码

请问 $a 和 $b 的值各位多少?
游客,如果您要查看本帖隐藏内容请回复



Q4:下面是true还是false
  1. <font size="2"><?php

  2. var_dump(0123 == 123);  
  3. var_dump('0123' == 123);  
  4. var_dump('0123' === 123);</font>
复制代码
游客,如果您要查看本帖隐藏内容请回复



Q5:下面的代码有什么问题吗?输出会是什么,怎样修复它
  1. <font size="2"><?php

  2.        $referenceTable = array();
  3.        $referenceTable['val1'] = array(1, 2);
  4.        $referenceTable['val2'] = 3;
  5.        $referenceTable['val3'] = array(4, 5);

  6.        $testArray = array();

  7.         $testArray = array_merge($testArray, $referenceTable['val1']);
  8.        var_dump($testArray);  
  9.        $testArray = array_merge($testArray, $referenceTable['val2']);
  10.        var_dump($testArray);  
  11.       $testArray = array_merge($testArray, $referenceTable['val3']);
  12.       var_dump($testArray);  </font>
复制代码

实际输出如下:

array(2) { [0]=> int(1) [1]=> int(2) }  
NULL  
NULL  

运行的时候你或许还能看到下面的警告

Warning: array_merge(): Argument #2 is not an array  
Warning: array_merge(): Argument #1 is not an array  

array_merge 需要传入的参数都是数组,如果不是,则会返回null。 你可以这样修改

游客,如果您要查看本帖隐藏内容请回复

Q6: $x应该是输出什么?
  1. <?php

  2.         $x = true and false;
  3.         var_dump($x);  </font>
复制代码

部分同学或许会第一时间想到false,实际上:
游客,如果您要查看本帖隐藏内容请回复


Q7:经过下面的运算 $x的值应该是多少?
  1. $x = 3 + "15%" + "$25"
复制代码
答案是 18 ,PHP是会根据上下文实现 类型的自动转换上面的代码我们可以这样理解:
游客,如果您要查看本帖隐藏内容请回复


Q8:运行下面的代码, $text 的值是多少? strlen($text) 又会返回什么结果?

<?php
    $text = 'John ';
    $text[10] = 'Doe';


上面代码执行完毕后 $text = "John D" (John后面会有连续的5个空格) strlen($text) 会返回11
游客,如果您要查看本帖隐藏内容请回复


Q9:下面的输出结果会是什么

    $v = 1;
     $m = 2;
     $l = 3;
     if( $l > $m > $v){  
          echo "yes";
     }else{
        echo "no";
     }

实际的输出是
游客,如果您要查看本帖隐藏内容请回复


Q10:执行下面代码 $x 会变成什么值呢?


     $x = NULL;
     if ('0xFF' == 255) {  
         $x = (int)'0xFF';
     }


实际的运行结果是
游客,如果您要查看本帖隐藏内容请回复




200 个回复

正序浏览
PHP新手必知
回复 使用道具 举报
阿萨德撒打算
回复 使用道具 举报
看看是什么东东
回复 使用道具 举报
126262626262626
回复 使用道具 举报
谢谢分享
回复 使用道具 举报
这个我要看
回复 使用道具 举报
PHP基础是不是扎实,那就测测这10个问题  
回复 使用道具 举报
顶顶!大爱黑马
回复 使用道具 举报
.....................
回复 使用道具 举报
学习学习
回复 使用道具 举报
学无止境
回复 使用道具 举报
谢谢楼主的无私奉献!!!!!!
回复 使用道具 举报
谢谢分享
回复 使用道具 举报
不知道sdfsdfsdfsdfsdfsdfsdf
回复 使用道具 举报
的10个问题,看似简单,但是每个背后都涵盖了一个或几个大家容易
回复 使用道具 举报
aaaaaaaaaaaaaa ds
回复 使用道具 举报
aaaaaaaaaaaaaa
回复 使用道具 举报
xuexile,学习了
回复 使用道具 举报
爱爱我爱爱爱爱我哎哎哎我爱爱爱爱你  
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马