php简单面试题小结
Mar 03, 2018 pm 01:05 PM本文主要和大家分享php简单面试题小结,希望能帮助到大家。
1 . echo 、print、print_r 的区别:
echo 是 php 语句,可以输出一个或者多个字符串,无返回值。
print、print_r 是函数,有返回值。
print() 只能打印出简单类型变量的值(如 int,string) ,print_r()可以打印出复杂类型变量的值(如数组,对象) ,echo 输出一个或者多个字符串
2 . 魔术常量
名称 | 含义 |
---|---|
__LINE__ | 文件中的当前行号。 |
__FILE__ | 文件的完整路径和文件名。如果用在被包含文件中,则返回被包含的文件名。 |
__DIR__ | 文件所在的目录。如果用在被包括文件中,则返回被包括的文件所在的目录。 |
__FUNCTION__ | 函数名称 |
__CLASS__ | 类的名称 |
__TRAIT__ | Trait 的名字,Trait 名包括其被声明的作用区域(例如 Foo\Bar)。 |
__METHOD__ | 类的方法名 |
__NAMESPACE__ | 当前命名空间的名称(区分大小写)。 |
3 .
1 . echo 、print、print_r 的区别:
echo 是 php 语句,可以输出一个或者多个字符串,无返回值。
print、print_r 是函数,有返回值。
print() 只能打印出简单类型变量的值(如 int,string) ,print_r()可以打印出复杂类型变量的值(如数组,对象) ,echo 输出一个或者多个字符串
2 . 魔术常量
名称 | 含义 |
---|---|
__LINE__ | 文件中的当前行号。 |
__FILE__ | 文件的完整路径和文件名。如果用在被包含文件中,则返回被包含的文件名。 |
__DIR__ | 文件所在的目录。如果用在被包括文件中,则返回被包括的文件所在的目录。 |
__FUNCTION__ | 函数名称 |
__CLASS__ | 类的名称 |
__TRAIT__ | Trait 的名字,Trait 名包括其被声明的作用区域(例如 Foo\Bar)。 |
__METHOD__ | 类的方法名 |
__NAMESPACE__ | 当前命名空间的名称(区分大小写)。 |
3 .get和post的区别
1.get和post都是从表单中像数据库中提交数据的两种方式,其中get的提交数据时,会把相关数据信息显示在url中,其中传递的值和表单中的各个字段一一对应。而post是通过http post机制,将表单内各个字段与其内容放置在HTML header内一起传送到action属性所指的URL地址。用户看不到这个过程。
2.get传送的数据量较小,不能大于2KB。post传送的数据量较大,一般被默认为不受限制。
3.安全性能方面显然post更好。但执行效率上get更好。
4. session和cookie的区别
1.cookie数据是存放在客户端的浏览器上,session数据放在服务器上。
2.cookie不是很安全,别人可以分析存放在本地的cookie并进行cookie解析从而获取用户信息。
3.session会在一定时间内保存在服务器上。当访问增多,会比较占用服务器的性能,如果考虑到要减轻服务器性能方面,应该使用cookie。
4.单个cookie保存的数据不能超过4kb,很多浏览器都限制一个站点最多保存20个cookie。
关于会话机制的具体详解,参考了一位博主的一篇博客http://blog.csdn.net/fangaoxin/article/details/6952954/感觉很详细,感兴趣的同学可以好好参考一下。
5.数据库中的事务是什么?
事务是作为一个逻辑单元执行的一系列操作,一个逻辑工作单元必须有四个属性,称为ACID(原子性、一致性、隔离性和持久性)属性,只有这样才能成为一个事务:
原子性
事务必须是原子工作单元;对于其数据修改,要么全都执行,要么全都不执行。
一致性
事务在完成时,必须使所有的数据都保持一致状态。在相关数据库中,所有规则都必须应用于事务的修改,以保持所有数据的完整性。事务结束时,所有的内部数据结构(如 B 树索引或双向链表)都必须是正确的。
隔离性
由并发事务所作的修改必须与任何其它并发事务所作的修改隔离。事务查看数据时数据所处的状态,要么是另一并发事务修改它之前的状态,要么是另一事务修改它之后的状态,事务不会查看中间状态的数据。这称为可串行性,因为它能够重新装载起始数据,并且重播一系列事务,以使数据结束时的状态与原始事务执行的状态相同。
持久性
事务完成之后,它对于系统的影响是永久性的。该修改即使出现系统故障也将一直保持。
begin 开始一个事务
rollback事务回滚
commit事务确认
注:rollback和commit不能并列使用,当同时使用时,只有前面一个生效
MYSQL默认是自动提交的 可以通过set autocommit=0 来设置 禁止自动提交 可以通过set autocommit=1 来设置 开启自动提交
6.关于PHP打印日期
<?php echo date('Y-m-d H:i:s',strtotime('-1day'));//前一天 echo‘<br>’; echo date('Y-m-d H:i:s',strtotime('-1week'));//前一周 echo'<br>'; echo date('Y-m-d H:i:s');//现在的时间 echo'<br>' echo date('Y-m-d H:i:s',strtotime('next Monday'));//下一个星期一 echo'<br>'; echo date('Y-m-d H:i:s',strtotime('last Monday'));//上一个星期一 echo "现在的时间是:".date(h:i:s a);//a-小写的上午和午后(am 或pm) ?>
时间差的计算
<?php $startdate =strtotime("2012-01-01"); $enddate=strtotime("2012-02-04"); $days=round(($enddate-$startdate)/86400)+1; echo $days; ?>
6.能使HTML和PHP分离开的模板
smarty ,phptal ,template、PHPlib Template、FastTemplate
相关推荐:
Atas ialah kandungan terperinci php简单面试题小结. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Artikel Panas

Alat panas Tag

Artikel Panas

Tag artikel panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Panduan Pemasangan dan Naik Taraf PHP 8.4 untuk Ubuntu dan Debian

Cara Menyediakan Kod Visual Studio (Kod VS) untuk Pembangunan PHP
