当前位置: 首页 > news >正文

面试题-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客户端上,不同的浏览器存储的数量和数据大小不一样

http://www.lryc.cn/news/326798.html

相关文章:

  • glibc内存管理ptmalloc - 多线程内存管理
  • 区块链食品溯源案例实现(一)
  • 4S店车辆管理系统的设计与实现|Springboot+ Mysql+Java+ B/S结构(可运行源码+数据库+设计文档)
  • SpringBoot+Prometheus+Grafana实现应用监控和报警
  • 10 - Debian如何让特定用户切换root身份
  • HPT发布HyperGAI 多模态大模型:性能领先GPT-4V,全面胜过Gemini Pro
  • 汇春科技之MDT10F684
  • 【Vue3笔记01】如何使用Vue3和Vite搭建前端项目的基础开发环境
  • 软考高级架构师:信息安全概念和例题
  • Lilishop商城(windows)本地部署【docker版】
  • # 14 React 自定义Hook详解
  • HTML静态网页成品作业(HTML+CSS+JS)——中华美食八大菜系介绍(1个页面)
  • PostgreSQL11 | Windows系统安装PostgreSQL
  • uniapp保留两位小数,整数后面加.00
  • R: 网状Meta分析进行模型构建及图形绘制
  • 数据结构——排序算法
  • MyBatis的高级特性探索
  • 未来制造:机器人行业新质生产力提升策略
  • 开发过程中PostgreSQL常用的SQL语句,持续更新ing
  • Linux screen命令教程:如何在一个终端窗口中管理多个会话(附实例详解和注意事项)
  • Android中的本地广播与全局广播
  • Debezium日常分享系列之:Debezium2.5稳定版本之MySQL连接器配置示例和Connector参数详解
  • vue3父组件给子组件传值,并在子组件接受
  • Python爬虫如何快速入门
  • 酷开科技依托酷开系统用“平台+产品+场景”塑造全屋智能生活!
  • P8649 [蓝桥杯 2017 省 B] k 倍区间:做题笔记
  • LeetCode题练习与总结:旋转图像
  • 如何在家中使用手机平板电脑 公司iStoreOS软路由实现远程桌面
  • 【文献分享】myMUSCLE, a New Multiphysics, Multiscale Simulation Coupling Environment
  • 2024年云计算使用报告,89%组织用多云,25%广泛使用生成式AI,45%需要跨云数据集成,节省成本是云首要因素