面试题-3.20

2024-03-28 10:12
文章标签 面试题 3.20

本文主要是介绍面试题-3.20,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1、__FILE__表示什么意思?

__FILE__:当前文件的完整路径和文件名
__LINE__:当前行
__DIR__:当前文件所在的目录

2、如何获取客户端的IP地址?
通过超全局数组$_SERVER:echo  $_SERVER['REMOTE_PORT'];
3、写出使用header函数跳转页面的语句?
header("Location: https://www.baidu.com");
header("HTTP/1.0 404 Not Found");
4、$str是一段html文本,使用正则表达式去除其中的所有js脚本?
$str= "<body><div>html</div></body><script type='application/json'>alert(111);</script>";. 匹配出换行符以外的所有字符        \n 匹配换行        * 匹配子表达式零次或多次(.|\n) 匹配script标签里面的所有数据      .* 匹配script里面的参数        +匹配一次或多次
1.正则表达式(匹配出js)
$reg="/<script.*>(.|\n)+<\/script>/";
2.正则替换(用空格替换)
$res=preg_replace($reg,"",$str);
echo $res;
5、写出将一个数组里的空值去掉的语句

$arr = [1,"",3];
$newArr=[]; foreach ($arr as $v){ if (!empty($v)){ $newArr[]=$v; } } var_dump($newArr);

6、写出获取当前时间戳的函数,及打印前一天的时间的方法(格式:年-月-日 时:分:秒)
$day=time()-24*60*60;
echo  date("Y-m-d H:i:s",$day);
echo "<br>";
echo date("Y-m-d H:i:s",strtotime("-1 day"));
7、写出php进行编码转换的函数
iconv(转换的编码,转换后的编码,需要转换的)
返回结果: 返回转换后的字符串,失败返回false
$str = "你好hh";
echo  strlen($str);
$str1=iconv("UTF-8","GBK",$str);
echo $str1;
8、$str = “1,3,5,7,9,10,20”,使用什么函数可以把字符串str转化为包含各个数字的数组?
$str = "1,3,5,7,9,10,20";
$arr=explode(",",$str);
var_dump($arr);
9、serialize() /unserialize()函数的作用

序列化是将变量转换为可保存或传输的字符串的过程 

反序列化就是在适当的时机把字符串再转换为变量

 注意:序列化对象无法序列化对象的方法 

class Person
{public $name="jack";public function test(){echo "测试方法";}
}
$person=new Person();
$ser=serialize($person);
var_dump($ser);
echo "<br>";
$unser=unserialize($ser);
var_dump($unser);
10、写出一个函数,参数为年份和月份,输出结果为指定月的天数
function monthDay($year,$month)
{echo date("t",strtotime($year."-".$month."-1"));
}
monthDay(2020,6);
11、一个文件的路径为/wwwroot/include/page.class.php,写出获得该文件扩展名的方法
$str="/wwwroot/include/page.class.php";
echo $str;
echo "<br>";
$arr=pathinfo($str);
//获取文件后缀
//$arr=pathinfo($str,PATHINFO_EXTENSION);
echo "<pre>";
var_dump($arr);
echo "<br>";
//获取文件后缀
echo $arr["extension"];echo "<br>";
//获取文件目录
echo pathinfo($str,PATHINFO_DIRNAME);
echo $arr["dirname"];echo "<br>";
//获取文件中的文件全名
echo $arr["basename"];echo "<br>";
//获取文件的文件名
echo $arr["filename"];
12、你使用过哪种PHP的模板引擎?
smarty优点
1.速度快,相对其它模板引擎
2.编译新,采用smarty编写的程序在运行是编译成一个非模板技术的php文件
3.缓存技术,它可以将用户最终看到的html文件缓存成一个静态的html页面
4.插件技术,smarty可以自定义插件
13、请简单写一个类,实例化这个类,并写出调用该类的属性和方法的语句
class Person
{public $name="jack";public function test(){echo "测试方法";}
}
$person=new Person();
$person->test();
echo $person->name;
14、本地mysql数据库db_test里已建有表friend,数据库的连接用户为root,密码为root
friend表字段为:id,name,age,gender,phone,email
请使用php连接mysql,选择出friend表里age > 20的所有记录打印结果,并统计出查询出的结果总数。
$pdo=new PDO("mysql:host=localhost;dbname=db_test","root","root");$sql="select * from friend where age>20";
$query=$pdo->query($sql);
$res=$query->fetchAll();
echo "<pre>";
var_dump($res);
echo "<br>";
echo count($res);
15.print,echo,print_r有什么区别.
echo  输出字符串,不是函数,没有返回值,echo 输出相对print更快
print 是一个函数,有返回值,
print_r 打印出复合类型,数组,对象
var_dump 输出数组 还会字符长度,类型,数据
16.require和include区别

include 报严重警告,还会继续执行后面的程序
require 报致命错误,不会继续执行

17.SESSION 与 COOKIE的区别是什么,请从协议,产生的原因与作用说明?

http协议是无状态的协议 

Session 在服务器上,默认是以文件形式存储 

Cookie客户端上,不同的浏览器存储的数量和数据大小不一样

这篇关于面试题-3.20的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/855325

相关文章

荣耀嵌入式面试题及参考答案

在项目中是否有使用过实时操作系统? 在我参与的项目中,有使用过实时操作系统。实时操作系统(RTOS)在对时间要求严格的应用场景中具有重要作用。我曾参与的一个工业自动化控制项目就采用了实时操作系统。在这个项目中,需要对多个传感器的数据进行实时采集和处理,并根据采集到的数据及时控制执行机构的动作。实时操作系统能够提供确定性的响应时间,确保关键任务在规定的时间内完成。 使用实时操作系统的

一些其他面试题

阿里二面:那你来说说定时任务?单机、分布式、调度框架下的定时任务实现是怎么完成的?懵了。。_哔哩哔哩_bilibili 1.定时算法 累加,第二层每一个格子是第一层的总时间400 ms= 20 * 20ms 2.MQ消息丢失 阿里二面:高并发场景下引进消息队列有什么问题?如何保证消息只被消费一次?真是捏了一把汗。。_哔哩哔哩_bilibili 发送消息失败

zookeeper相关面试题

zk的数据同步原理?zk的集群会出现脑裂的问题吗?zk的watch机制实现原理?zk是如何保证一致性的?zk的快速选举leader原理?zk的典型应用场景zk中一个客户端修改了数据之后,其他客户端能够马上获取到最新的数据吗?zk对事物的支持? 1. zk的数据同步原理? zk的数据同步过程中,通过以下三个参数来选择对应的数据同步方式 peerLastZxid:Learner服务器(Follo

java常用面试题-基础知识分享

什么是Java? Java是一种高级编程语言,旨在提供跨平台的解决方案。它是一种面向对象的语言,具有简单、结构化、可移植、可靠、安全等特点。 Java的主要特点是什么? Java的主要特点包括: 简单性:Java的语法相对简单,易于学习和使用。面向对象:Java是一种完全面向对象的语言,支持封装、继承和多态。跨平台性:Java的程序可以在不同的操作系统上运行,称为"Write once,

【Kubernetes】常见面试题汇总(三)

目录 9.简述 Kubernetes 的缺点或当前的不足之处? 10.简述 Kubernetes 相关基础概念? 9.简述 Kubernetes 的缺点或当前的不足之处? Kubernetes 当前存在的缺点(不足)如下: ① 安装过程和配置相对困难复杂; ② 管理服务相对繁琐; ③ 运行和编译需要很多时间; ④ 它比其他替代品更昂贵; ⑤ 对于简单的应用程序来说,可能不

【附答案】C/C++ 最常见50道面试题

文章目录 面试题 1:深入探讨变量的声明与定义的区别面试题 2:编写比较“零值”的`if`语句面试题 3:深入理解`sizeof`与`strlen`的差异面试题 4:解析C与C++中`static`关键字的不同用途面试题 5:比较C语言的`malloc`与C++的`new`面试题 6:实现一个“标准”的`MIN`宏面试题 7:指针是否可以是`volatile`面试题 8:探讨`a`和`&a`

Laravel 面试题

PHP模块 PHP7 和 PHP5 的区别,具体多了哪些新特性? 性能提升了两倍 结合比较运算符 (<=>) 标量类型声明 返回类型声明 try…catch 增加多条件判断,更多 Error 错误可以进行异常处理 匿名类,现在支持通过new class 来实例化一个匿名类,这可以用来替代一些“用后即焚”的完整类定义 …… 了解更多查看文章底部链接 PHP7 新特性 为什么 PHP

【吊打面试官系列-Redis面试题】说说 Redis 哈希槽的概念?

大家好,我是锋哥。今天分享关于 【说说 Redis 哈希槽的概念?】面试题,希望对大家有帮助; 说说 Redis 哈希槽的概念? Redis 集群没有使用一致性 hash,而是引入了哈希槽的概念,Redis 集群有 16384 个哈希槽,每个 key 通过 CRC16 校验后对 16384 取模来决定放置哪个槽, 集群的每个节点负责一部分 hash 槽。

【Kubernetes】常见面试题汇总(一)

目录 1.简述 etcd 及其特点? 2.简述 etcd 适应的场景? 3.简述什么是Kubernetes? 4.简述 Kubernetes和 Docker的关系? 1.简述 etcd 及其特点? (1)etcd 是Core0s 团队发起的开源项目,是一个管理配置信息和服务发现(service discovery)的项目,它的目标是构建一个高可用的分布式键值(keyvalue)数据

2018秋招C/C++面试题总结

博主从8月中旬开始大大小小面试了十几家公司,至今也许是告一段落吧,希望后面会有好结果,因此总结记录一些C/C++方向常见的问题。和大家一起学习! 参考了互联网的各种资源,自己尝试归类整理,谢谢~ 一、C和C++的区别是什么? C是面向过程的语言,C++是在C语言的基础上开发的一种面向对象编程语言,应用广泛。 C中函数不能进行重载,C++函数可以重载 C++在C的基础上增添类,C是一个结构