1.PHP解析URL是哪个函数?

  parse_url() 是讲URL解析成有固定键值的数组的函数。

$ua=parse_url('http://username:password@hostname/path?arg=value#anchor');
print_r($ua);

  结果:

Array(
[scheme] => http
[host] => hostname
[user] => username
[pass] => password
[path] => /path
[query] => arg=value
[fragment] => anchor
)

  2.什么是smarty? Smarty的优点是什么?

  Smarty是一个使用PHP写出来的PHP模板引擎,目的是要使用PHP程序同美工分离,使的程序员改变程序的逻辑内容时不会影响到美工的页面设计,美工重新修改页面时不会影响到程序的程序逻辑,这在多人合作的项目中显的尤为重要。(也易于程序的多样式开发)

  Smarty优点:

  1. 速度快:相对其他模板引擎。

  2. 编译型:采用smarty编写的程序在运行时要编译成一个非模板技术的PHP文件。

  3 .缓存技术:它可以将用户最终看到的HTML文件缓存成一个静态的HTML页。

  4. 插件技术:smarty可以自定义插件。

  不适合使用smarty的地方:

  1. 需要实时更新的内容。例如像股票显示,它需要经常对数据进行更新 。

  2. 小项目。小项目因为项目简单而美工与程序员兼于一人的项目。

  3.如何配置、使用和清除Smarty缓存

  1、Smarty缓存的配置

  $smarty->cache_dir = “/caches/”; //缓存目录

  $smarty->caching = true; //开启缓存,为flase的时侯缓存无效

  $smarty->cache_lifetime = 60; //缓存时间

  2、Smarty缓存的使用和清除

  $smarty->display(‘cache.tpl’, cache_id); //创建带ID的缓存

  $smarty->clear_all_cache(); //清除所有缓存

  $smarty->clear_cache(‘index.htm’); //清除index.tpl的缓存

  $smarty->clear_cache(‘index.htm’,cache_id); //清除指定id的缓存

  4.介绍一下Cookie和Session及他们之间的区别

  在非常多时候,我们需要跟踪浏览者在整个网站的活动,对他们身份进行自动或半自动的识别(也就是平时常说的网站登陆之类的功能),这时候,我们常采用Cookie与 Session来跟踪和判断。

  区别:

  Session信息是存放在server端,但session id是存放在client cookie的,当然php的session存放方法是多样化的,这样就算禁用cookie一样可以跟踪Cookie是完全保持在客户端的如:IE firefox 当客户端禁止cookie时将不能再使用

  使用Cookie的限制:

  1、必须在HTML文件的内容输出之前设置;

  2、不同的浏览器对Cookie的处理不一致,且有时会出现错误的结果。

  3、限制是在客户端的。一个浏览器能创建的Cookie数量最多为30个,并且每个不能超过4KB,每个WEB站点能设置的Cookie总数不能超过20个。

  5.PHP开发的一般流程

  1、尽量完整的需求方案,具体到每个功能点上

  2、建模结构UML,通过UML工具建立专业的模或自己画一个简单的关系图。

  3、建立数据库

    1)、建立的表名、字段名要与他的功能有关系英文不好的拼音同样可以

    2)、根据结构建立数据库表,原则是不定项内容一定要分表。

    3)、字段类型要考虑内容是否够用就好,选择适合的类型 INT Varchar Date

  4、设计HTML文件和脚本的实现

  根据模和数据库来设计页面是个很科学的方法,当然有的时候有人喜欢根据模型设计页面,数据库基于页面设计,都是可以的。设计页面时要考虑到每个细节,包括提示消息页面,错误页面。

  5、PHP代码的书写

    1)、先建立底层结构和文件夹(如果是大型的网站同样设计一个文件UML

    2)、基础功能分类关联,以便今后代码引用。

    3)、代码的书写,注意简洁性和函数的使用,内部函数能实现的尽量用内部函数

    4)、在部分关键位置加以代码注释。

  6、程序的测试和修正

    1)、对于发现的BUG不能就解决BUG而解决,要处于完整程序考虑。避免收之东隅失之桑榆。

    2)、对于解决过的BUG已经要详细记录,以便日后更新。

  6.PHP如何对用户密码进行加密

  md5() sha1()

  7.mysql_pconnect()和mysql_connect()有什么区别

  两者的区别主要有两个:
  1. 在进行数据库连接时,函数会先找同一个host, 用户和密码的persistent(持续的)的链接,如果能找到,则使用这个链接而不返回一个新的链接。
  2. mysql_pconnect()创建的数据库连接在脚本执行完毕后仍然保留,可以被后来的代码继续使用,mysql_close()函数也不会关闭mysql_pconnect()创建的链接。

  8.请说明 PHP 中传值与传引用的区别。什么时候传值什么时候传引用?

  答: 传值只是把某一个变量的值传给了另一个变量,而引用则说明两者指向了同一个地方。

  9. 在PHP中error_reporting这个函数有什么作用?  

  答: The error_reporting() function sets the error_reporting directive at runtime. PHP has many levels of errors, using this function sets that level for the duration (runtime) of your script.

  

PHP面试题 – 培训学校真实面试内部资料的更多相关文章

  1. 一份最贴近真实面试的Java基础面试题

    这是一份Java基础知识的面试题.在网上的关于Java的面试题数不胜数,但认真看过感觉大多数都没有实用性,有很多是面试官根本就不会问到的,那些已经脱离了实际开发的技术问题.而这份资料来源自一份个人觉得 ...

  2. 一份贴近真实面试的Java面试题(基础部分)

    这是一份关于Java基础的面试题.在网上的关于Java的面试题数不胜数,但本人认真看过后觉得大多数都没有实用性,有很多是面试官根本就不会问到的,企业根本不会用到的,一些已经脱离了实际开发的技术问题.而 ...

  3. Atitit 教育与培训学校 的计划策划 v4 qc18

    Atitit 教育与培训学校 的计划策划 v4 qc18 1.1. 版本历史12. 教育历史的前世今生12.1. 自学vs 家庭学校vs 私立学校vs 公立学校模式 vs 企业内部学校 vs 其他商业 ...

  4. Atitit 教育与培训学校 的计划策划 v2

    Atitit 教育与培训学校 的计划策划 1. 历史大趋势,教育的普及化1 2. 我们的目标,人人可以接受硕士博士教育,确保全球60亿人的普世化教育1 3. 学校的注册,可以选择在全球费用最优惠的地方 ...

  5. 2019 Power BI最Top50面试题,助你面试脱颖而出系列<上>

    距离4月还剩11天, 你是否还在投简历找工作而机会寥寥? 你是否还在四处奔波疲于面试而结果不意? ....... 知否知否, 天下武功唯快不破, 传说江湖有本Power BI 面试真香秘籍, 能助你快 ...

  6. 给培训学校讲解ORM框架的课件

    导读:这是我给某培训学校培训.net程序员所设计的课件,他们普遍反映太难了,是这样吗?

  7. 学Web前端开发,选择培训学校是关键--青岛思途

    互联网+的提出,催生了Web前端开发行业更大的就业空间,其行业热度也正呈爆炸式增长.专业人才供不应求导致了从业者薪资的居高不下,一般来说Web前端工程师的年薪可达15w以上,工作3~5年后通常可达到1 ...

  8. 2019 Power BI最Top50面试题,助你面试脱颖而出系列<下>

    Q:什么是附加题? A:这就是常说的送分可选题,可做可不做:也可以说是加分项,是难点提升题. Power BI 面试题 — 附加题 33)什么是 Power View? 答案: Power View是 ...

  9. C语言经典面试题 与 C语言面试宝典

    1 预处理 问题1:什么是预编译?何时需要预编译? 答: 预编译又称预处理,是整个编译过程最先做的工作,即程序执行前的一些预处理工作.主要处理#开头的指令.如拷贝#include包含的文件代码.替换# ...

随机推荐

  1. Hibernate命名查询

    hibernate命名的查询是通过一些有意义的名称来使用查询的方式.就类似于使用别名一样. Hibernate框架提供命名查询的概念,以便应用程序员不需要将查询分散到所有的java代码,进一步提高代码 ...

  2. tomcat 测试页面显示

    首先下载匹配jdk版本的tomcat 解压即可使用 将完成的html文件直接放置到webapps目录下的子目录中是无法使用的 原因是tomcat默认加载的是jsp文件,且需要文件配置 所以,除去在we ...

  3. Mybatis 逆向工程 自动生成代码

    Mybatis 可以通过一定的代码,自动生成包括mapper.xml.mapper.java.po等文件: 一.环境准备: 用到的JAR包如下: 文件只有两个:GenMain.java和generat ...

  4. Sublime 正则 替换方法

  5. Linux vi 文件编辑

    1.通过vi filename 进入编辑状态 2.退出 vi 编辑器 退出命令 说明 q 如果文件未被修改,会直接退回到Shell:否则提示保存文件. q! 强行退出,不保存修改内容. wq w 命令 ...

  6. linux下Java运行时so文件的附加

    将路径加入至 etc/ld.so.conf 中

  7. c++通过类名动态创建对象

    转载:http://www.seacha.com/article.php/knowledge/cbase/2013/0615/2154.html 主要思想:在每次创建类的过程中,通过各自类的辅助类(所 ...

  8. 【转】NPOI读写Excel

    1.整个Excel表格叫做工作表:WorkBook(工作薄),包含的叫页(工作表):Sheet:行:Row:单元格Cell. 2.NPOI是POI的C#版本,NPOI的行和列的index都是从0开始 ...

  9. Java中Jedis操作Redis与Spring的整合

    Redis是一个key-value存储系统.它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合)和zset(有序集合).这些数据类型都支持push/pop. ...

  10. 参数Slave_IO_Running和Slave_SQL_Running的状态值解析

     Slave_SQL_Running: No mysql同步故障解决方法 2010-02-21 16:31:30 标签:mysql 双机 同步 数据库 休闲 原创作品,允许转载,转载时请务必以超链接形 ...