聚美优品PHP笔试题.pdfVIP

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

聚美优品php面试题

一、论述:

请阐述PHP异常(Exception)和错误(error_reportingE_ERROR

E_WARNINGE_NOTICE)机制的区别,分别适合用于怎样的场景?

实际运行中的系统遇到了异常或错误怎么办?

异常处理用于在指定的错误(异常)情况发生时改变脚本的正常

流程。这种情况称为异常。自定义的exception类继承了PHP的

exception类的所有属性,您可向其添加自定义的函数。

创建checkNum()函数。它检测数字是否大于1。如果是,则

抛出一个异常。

在try代码块中调用checkNum()函数。

checkNum()函数中的异常被抛出

catch代码块接收到该异常,并创建一个包含异常信息的对象

($e)。

通过从这个exception对象调用$e-getMessage(),输出来自

该异常的错误消息

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

的错误报告级别,也就是设置php显示哪些错误,一般设置为

error_reporting(E_ALL^E_NOTICE);就可以。此设置相当于php.ini

文件中的error_reporting=

二、编程

1、请实现一个函数,输入一段文本,把文本解析到一个数组中,数

组每行元素的key通过输入参数指定。函数原型:function

ExplodeLines($text,$columnNames)

例如,输入:

$text=

Apple,20,red

Pear,10,yellow

;

$columnNames=array(Fruit,Number,Color)

函数返回:

array(

array(Fruit=Apple,Number=20,Color=red),

array(Fruit=Pear,Number=10,

Color=yellow),

)

2、含折扣的退货算法。

函数原型:functionCalcRefundAmount($orderItems,

$discountAmount,$refundItems)

假设用户有一个订单,

$orderItems=array(

ItemA=array(price=5.0,quantity=2),

ItemB=array(price=20.0,quantity=1),

);

订单中产品ItemA的单价是5.0,数量是2;产品ItemB的单价是20,

数量是1;

这个订单总价是5.0*2+20.0*1=30。

假设最终付款的时候,由于这个订单由于使用代金券,优惠了

$discountAmount=10.0元的价格,用户实际支付了20元。退货的

时候,每个产品的退货价格是按照付款折扣率计算的。如果用户退货

需要退掉1个ItemA,那么实际退给用户的钱应该是

(5.0*1)*(20.0/30.0)=3.33元(精确到2位小数)

$refundItems是实际退货的数量。在$orderItems为上述取值,

$discountAmount=10的时候

样例1:$refundItems=array(array(ItemA=1))表示退1个

ItemA,函数返回3.33

样例2:$refundItems=array(array(ItemA=2,ItemB=1))表示

全退,函数返回20.00

请编写能实现上述功能的函数。

不会

三、设计(选做)

假设我们需要做一个用户金币系统。用户每天第一次登录可以获得1

个金币,用户下单购买东西后会获得20个金币。但是这两种金币有

不同的性质。

文档评论(0)

139****1921 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档