Yii支持多域名cors原理

平常我们遇到跨域问题时,常使用 cors(Cross-origin resource sharin)方式解决。不知你是否注意到,在设置响应头 Access-Control-Allow-Origin 域的值时,只允许设置一个域名,这意味着不能同时设置多个域名来共享资源。而在 Yii2 中直接使用'Origin' => ['http://www.site1.com', 'http://www.site2.com']的形式却可以设置多个 cors 域名值,Why?…

从foreach方法引出的PHP内存分析

原文:链家产品技术团队 PHP 代码中 Foreach 结构随处可见,我们在使用时,是否了解其行为呢?我们这篇文章通过一些例子来分析下 Foreach 结构的内存行为。如果你想了解 PHP 内存相关的内容,不妨把这篇文章作为一个参考。 …

PJAX原理和使用

pjax 即 pushState + ajax,它被封装成了一个 jQuery 扩展以方便使用。pjax 主要用来解决 HTML 页面局部刷新 url 不更新和不支持后退和前进的问题,提升用户体验。 …

PHP定时脚本的那些事

在项目中,经常会遇到定时任务的情景,当然这不仅仅只是将 PHP 文件结合 crontab 这么简单。其中有一些我遇到的非 code 层面的问题,在这里列举出来。 …

解决YII2验证码不刷新问题

在 Yii 2 中的验证码功能的确很方便,但是会存在刷新页面并不会刷新验证码的现象,不知道作者这么做有什么意图?在实际应用中,有较多的场景需要刷新页面并刷新验证码,这里在不修改框架源码的情况下,给出了可供参考的解决办法。 …

按照奖品概率分布抽奖的实现

需求:首先用户通过以一定方式(好友点赞等)开启抽奖资格,然后按照用户 100% 中奖概率进行抽奖,且系统的发放奖品需要按照各个奖品整体的期望中奖比例来进行分布,最后用户抽中奖品调用第三方发放接口发放奖品并记录保存,另有些奖品存在发放数量限制。…

编程中的幂等性 — HTTP幂等性

原文:http://www.i3geek.com/archives/841 幂等(idempotence)是一个数学与计算机学概念,常见于抽象代数中。在编程中,一个幂等操作的特点是其任意多次执行所产生的影响均与一次执行的影响相同。幂等函数,或幂等方法,是指可以使用相同参数重复执行,并能获得相同结果的函数。这些函数不会影响系统状态,也不用担心重复执行会对系统造成改变。例如,“getUsername() 和 setTrue()” 函数就是一个幂等函数,更复杂的操作幂等保证是利用唯一交易号(流水号)实现。…

安全使用调试模式

在开发过程中我们会开启调试模式,方便我们能快速定位错误和发现潜在问题。但是,项目上线后必须关闭这类敏感信息,难道只能通过更改代码逻辑或者配置文件来实现吗?…

求非负数组元素组成的最大字符串

问题叙述:将一个非负元素数组中的所有元素排列组合在一起,找出值最大的那个排列情况。例如 [0, 9, 523, 94, 10, 4],排列组合后值最大数为:9945234100。 …

PHP生成随机红包算法

原文:http://www.lcode.cc/2016/12/24/rand_ward.html 前一阵公司业务有一个生成红包的需求,分为固定红包和随机红包两种,固定红包没什么好说的了,随机红包要求指定最小值,和最大值,必须至少有一个最大值,可以没有最小值,但任何红包不能小于最小值。 …