php面试1

一般的互联网公司现在是没有笔试这一项的,所以一般只要你简历能够过关,就会直接过去面试,这关于hr面不谈了,说一说技术面(我说的比较笼统,具体的内容我希望以后的博客我自己也能都涉猎到)
关于基础(这块我是参考知乎一段面试php的,里面加上了一些自己的想法和认为比较能说明问题的题目):

  1.php数组:数组函数,遍历,这块自己看,简单说下预定义数组,可能会问你你知道哪些
   服务器变量:$_SERVER,环境变量:$_ENV,request变量:$_REQUEST,HTTP文件上传变量:$_FILES,HTTP Cookies :$_COOKIE,Session变量:$_SESSION,Global变量:$GLOBALS,当然最后少不掉最基础的$_GET和$_POST

  2.变量类型转换:这段手册有说明:PHP 在变量定义中不需要(或不支持)明确的类型定义;变量类型是根据使用该变量的上下文所决定的。也就是说,如果把一个 string 值赋给变量 $var$var 就成了一个 string。如果又把一个integer 赋给 $var,那它就成了一个integer

PHP 的自动类型转换的一个例子是乘法运算符“*”。如果任何一个操作数是float,则所有的操作数都被当成float,结果也是float。否则操作数会被解释为integer,结果也是integer。注意这并没有改变这些操作数本身的类型;改变的仅是这些操作数如何被求值以及表达式本身的类型。

  <?php
  $foo = "1";  // $foo 是字符串 (ASCII 49)
  $foo *= 2;   // $foo 现在是一个整数 (2)
  $foo = $foo * 1.3;  // $foo 现在是一个浮点数 (2.6)
  $foo = 5 * "10 Little Piggies"; // $foo 是整数 (50)
  $foo = 5 * "10 Small Pigs";     // $foo 是整数 (50)

多说一句,这块转换其实可以直接int($foo),也可以转换类型了,顺便需要去关注一下,几个判断类型的方法,is_numeric(),is_array()...看啥类型直接var_dump就行了

变量的引用,不排除有公司问这块,我这边有道题目,研究下应该就能搞懂了,具体走向可以phpstorm+xdebug看看变量具体是怎么传值的

  

<?php
$arr = [1, 3, 4];
foreach ($arr as &$val) {
$val *= 2;
}
print_r($val);
$val = [];//重新赋值是改变不了的,想改变必须使用unset()
$val[0] = 9;
$val[1] = 10;
var_dump($arr, $val);
die;
3.正则表达式,这块我不是很熟悉,只会一些最基础的,有人问我,我一般就说不会。。
4.php是oop的,所以需要了解面向对象的魔术方法,封装,继承,多态的一些特点
5.数据库设计相关,针对于数据库优化,索引,分表,分库等等,这块详见我后面的文章




 

 

 

 

 

 

 

 

 

   

posted @ 2018-04-19 17:30  lululuha  阅读(158)  评论(0编辑  收藏  举报