• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

PHP面试题之问答题最新汇总

php 搞代码 3年前 (2022-01-20) 31次浏览 已收录 0个评论

本篇文章给大家分享PHP面试题之问答题最新汇总,有一定的参考价值,需要的朋友可以参考一下,希望对大家有所帮助。

相关推荐:《PHP面试题之应用题最新汇总》《PHP面试题之概念题最新汇总》

1. echo()、print()、print_r() 的区别

echo()、print() 是 PHP 语句;print_r() 是函数,

  • print()只能打印出简单类型变量的值(如int,string),有返回值。
  • print_r()可以打印出复杂类型变量的值(如数组,对象)
  • echo 输出一个或者多个字符串,无返回值

2. 字符串中单引号与双引号的区别

  • 单引号不能解释变量,而双引号可以解释变量。
  • 单引号不能转义字符,在双引号中可以转义字符。

3. error_reporting 作用

error_reporting() 设置 PHP 的报错级别并返回当前级别。

4. SESSION 与 COOKIE 的区别

  • session 存储在服务器端,cookie 保存在客户端。

  • session比较安全,cookie 用某些手段可以修改,不安全。

  • session 的运行依赖 sesseion id,而 session id 存在 cookie 中。如果禁用 cookie,session 会失效。(但可以通过其他方式实现,比如在 url 中传递 session id)。

  • session 可以放在 文件、数据库或内存中。默认存储在服务器的一个文件中。

5. get 和 post 的区别

get是显式的,数据从url中可以看到,传输的数据量小,安全性低;

post是隐式的,传送的数据量较大,安全性较高 。

6. 写出下面代码的执行结果

<?php
    $a<p style="color:transparent">本文来源gao!%daima.com搞$代*!码$网3</p><strong>搞代gaodaima码</strong> = 12;
    $b = 012;
    $c = 0x12;
    echo $a,"\n",$b,"\n",$c;

解析:八进制12转为二进制001010,二进制再转为十进制为10。十六进制12转为二进制00010010,二进制再转为十进制18。所以结果为 12 10 18。

7. 解决 url 出现中文乱码

使用 urlencode() 对中文进行编码。

8. 把 GB2312 格式的字符串转换成 UTF-8

iconv('GB2312','UTF-8','悄悄是别离的笙箫');

9. 字符串转化为数组

$str = "hello word;From-ajiang";str_split($str, 3);
explode(";", $str);preg_split("/-/", $str);

10. 字符串替换函数

$str = 'linux and php';
str_replace('linux', 'windows', $str);
preg_replace('/linux|php/', 'js', $str);

11. 字符串查找函数

preg_match("/php/i", "PHP is the web scripting language of choice.");
$userinfo = "Name: <b>PHP</b> <br> Title: <b>Programming Language</b>";
preg_match_all ("/<b>(.*)<\/b>/U", $userinfo, $pat_array);
strpos("I love php, I love php too!","php");   // 首次匹配的位置
strrpos("I love php, I love php too!","php");  // 最后匹配的位置

12. 使用 redis 有哪些好处

发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址