<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[xmlife的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/xmlife</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; xmlife]]></copyright><item><title><![CDATA[订单表设计参考]]></title><link>https://blog.youkuaiyun.com/xmlife/article/details/117820230</link><guid>https://blog.youkuaiyun.com/xmlife/article/details/117820230</guid><author>xmlife</author><pubDate>Fri, 11 Jun 2021 16:02:25 +0800</pubDate><description><![CDATA[订单表 (order)
|-- 自动编号（order_id, 自增长主键）
|-- 订单单号（order_no, 唯一值，供客户查询）
|-- 商店编号（shop_id, 商店表自动编号）
|-- 订单状态 (order_status,未付款,已付款,已发货,已签收,退货申请,退货中,已退货,取消交易)
|-- 商品数量 (product_count, 商品项目数量，不是商品)
|-- 商品总价 (product_amount_total)
|-- 订单金额 (order_amount_total，实际付款]]></description><category></category></item><item><title><![CDATA[(转) XSS跨站脚本攻击实例讲解]]></title><link>https://blog.youkuaiyun.com/xmlife/article/details/111870930</link><guid>https://blog.youkuaiyun.com/xmlife/article/details/111870930</guid><author>xmlife</author><pubDate>Mon, 28 Dec 2020 17:22:24 +0800</pubDate><description><![CDATA[1、简介

跨站脚本（cross site script）为了避免与样式css混淆，所以简称为XSS。

XSS是一种经常出现在web应用中的计算机安全漏洞，也是web中最主流的攻击方式。那么什么是XSS呢？

XSS是指恶意攻击者利用网站没有对用户提交数据进行转义处理或者过滤不足的缺点，进而添加一些代码，嵌入到web页面中去。使别的用户访问都会执行相应的嵌入代码。

从而盗取用户资料、利用用户身份进行某种动作或者对访问者进行病毒侵害的一种攻击方式。

XSS攻击的危害包括：

1、盗取各类用户帐号，如机器]]></description><category></category></item><item><title><![CDATA[通俗易懂的flex讲解]]></title><link>https://blog.youkuaiyun.com/xmlife/article/details/103685565</link><guid>https://blog.youkuaiyun.com/xmlife/article/details/103685565</guid><author>xmlife</author><pubDate>Tue, 24 Dec 2019 16:45:16 +0800</pubDate><description><![CDATA[目前在不考虑IE以及低端安卓机（4.3-）的兼容下，已经可以放心使用flex进行布局了。什么是flex布局以及它的好处，这里就不再赘述。

在这篇文章里，想说说flex布局的属性语法及其细节。那么网上也有不少flex布局的教程，为什么又要再写一篇？

首先，flex布局的迷之属性们，如果一知半解，机械记忆的话，那不到半个月基本忘光光。先感受一下这12个flex布局属性，是不是很“迷”人。

容器属...]]></description><category></category></item><item><title><![CDATA[HTML转义字符大全]]></title><link>https://blog.youkuaiyun.com/xmlife/article/details/82783129</link><guid>https://blog.youkuaiyun.com/xmlife/article/details/82783129</guid><author>xmlife</author><pubDate>Thu, 20 Sep 2018 10:55:00 +0800</pubDate><description><![CDATA[ISO Latin-1字符集:
&amp;amp;#09; — 制表符Horizontal tab
&amp;amp;#10; — 换行Line feed
&amp;amp;#13; — 回车Carriage Return
&amp;amp;#32; — Space
! &amp;amp;#33; — 惊叹号Exclamation mark
” &amp;amp;#34; &amp;amp;quot; 双引号Quotation mark
# &amp;amp;...]]></description><category></category></item><item><title><![CDATA[FastCGI下PHP无法显示错误信息,500错误]]></title><link>https://blog.youkuaiyun.com/xmlife/article/details/80676189</link><guid>https://blog.youkuaiyun.com/xmlife/article/details/80676189</guid><author>xmlife</author><pubDate>Wed, 13 Jun 2018 11:08:15 +0800</pubDate><description><![CDATA[在IIS+FastCGI中配置PHP后，如果php源文件中存在错误，则不论是什么错误，FastCGI都会返回内部服务器错误500的信息，这给程序调试带来了麻烦。解决这个问题的办法如下：    打开PHP的配置文件php.ini，并做如下配置修改：    fastcgi.logging = 0     log_errors = On    error_reporting = E_ALL     er...]]></description><category></category></item><item><title><![CDATA[移动端UI设计规范参考]]></title><link>https://blog.youkuaiyun.com/xmlife/article/details/79813823</link><guid>https://blog.youkuaiyun.com/xmlife/article/details/79813823</guid><author>xmlife</author><pubDate>Wed, 04 Apr 2018 10:37:12 +0800</pubDate><description><![CDATA[这个设计规范，主要两个原因：1、要设计的界面太多了，而且产品迭代很快，来不及一个个界面标注重复性的东西，于是我就出一个字体运用规范，让开发看一个文档就好了。有个设计文档和UI设计规范，可以减少很多设计与开发之间的沟通。后来给开发团队引进了zeplin，安卓小伙伴持续用着，ios开发，一直看着我的sketch源文件，在我教会开发sketch后，我连字体规范都少写了很多。2、把这些东西一个版本的整理好...]]></description><category></category></item><item><title><![CDATA[移动端 UI设计尺寸(一)篇]]></title><link>https://blog.youkuaiyun.com/xmlife/article/details/79806285</link><guid>https://blog.youkuaiyun.com/xmlife/article/details/79806285</guid><author>xmlife</author><pubDate>Tue, 03 Apr 2018 17:27:50 +0800</pubDate><description><![CDATA[现象首先说现象，大家都知道移动端设备屏幕尺寸非常多，碎片化严重。尤其是Android，你会听到很多种分辨率：480×800, 480×854, 540×960, 720×1280, 1080×1920，而且还有传说中的2K屏。近年来iPhone的碎片化也加剧了：640×960, 640×1136, 750×1334, 1242×2208。不要被这些尺寸吓倒。实际上大部分的app UI设计和移动端网...]]></description><category></category></item><item><title><![CDATA[window下安装php7的memcached扩展]]></title><link>https://blog.youkuaiyun.com/xmlife/article/details/79458991</link><guid>https://blog.youkuaiyun.com/xmlife/article/details/79458991</guid><author>xmlife</author><pubDate>Tue, 06 Mar 2018 15:34:49 +0800</pubDate><description><![CDATA[https://stackoverflow.com/questions/34952502/memcache-for-php7-on-windows，git下载地址：https://github.com/nono303/PHP7-memcache-dll百度网盘链接：http://pan.baidu.com/s/1ge9MvEN 密码：zwoh根据自己的php版本下载下载解压后，就到 php/ext...]]></description><category></category></item><item><title><![CDATA[SKU组合查询算法代码-实例二]]></title><link>https://blog.youkuaiyun.com/xmlife/article/details/77774700</link><guid>https://blog.youkuaiyun.com/xmlife/article/details/77774700</guid><author>xmlife</author><pubDate>Fri, 01 Sep 2017 16:37:49 +0800</pubDate><description><![CDATA[Debug SKU






SyntaxHighlighter.all();


.bh-sku-selected {color: red;}


var startTime = new Date().getTime();
//销售属性集
var keys = [
        ['10'],
        ['20','21','22','23','24'],
        ['30']]></description><category></category></item><item><title><![CDATA[sku组合查询算法探讨-之JS实现示例]]></title><link>https://blog.youkuaiyun.com/xmlife/article/details/77650503</link><guid>https://blog.youkuaiyun.com/xmlife/article/details/77650503</guid><author>xmlife</author><pubDate>Mon, 28 Aug 2017 16:36:46 +0800</pubDate><description><![CDATA[/* 后端数据 */
var data = {
    "10;20;30": {
        price: 5,
        count: 1
    },
    "10;20;31": {
        price: 10,
        count: 2
    },
    "11;20;30": {
        price: 5,
        count: 1
  ]]></description><category></category></item><item><title><![CDATA[sku组合查询算法探讨]]></title><link>https://blog.youkuaiyun.com/xmlife/article/details/77628724</link><guid>https://blog.youkuaiyun.com/xmlife/article/details/77628724</guid><author>xmlife</author><pubDate>Mon, 28 Aug 2017 09:04:36 +0800</pubDate><description><![CDATA[sku组合查询算法探讨


在前端领域，很少会遇到算法问题，这不能说不是一种遗憾。不过，随着前端处理的任务越来越复杂和重要，偶尔，也能遇到一些算法上的问题。本文，所要讨论的，就是这样一样问题。
什么是SKU
问题来自垂直导购线周会的一次讨论，sku组合查询，这个题目比较俗，是我自己取得。首先，看下什么是sku，来自维基百科的解释：

最小存货单位(Stock Keeping Unit]]></description><category></category></item><item><title><![CDATA[Yii2 rbac权限控制之Rule实现及应用详解]]></title><link>https://blog.youkuaiyun.com/xmlife/article/details/73929905</link><guid>https://blog.youkuaiyun.com/xmlife/article/details/73929905</guid><author>xmlife</author><pubDate>Fri, 30 Jun 2017 04:31:20 +0800</pubDate><description><![CDATA[对于一般的权限系统而言，我们之前做的rbac一般情况下是足够的，即时没有rule,相信你也能实现我们用rule实现的功能。
我们就以官网的例子给出一个具体的操作教程，看看这个神秘的rule到底是做什么的！
看需求：
我们有管理员和普通用户，对于文章系统而言，我们允许管理员对文章的任何操作，但是只允许普通用户创建文章和修改自己创建的文章，注意哦，是允许其修改自己创建的文章，不是不允许修改文章，]]></description><category></category></item><item><title><![CDATA[PHP执行定时任务的实现思路（一）]]></title><link>https://blog.youkuaiyun.com/xmlife/article/details/73252652</link><guid>https://blog.youkuaiyun.com/xmlife/article/details/73252652</guid><author>xmlife</author><pubDate>Wed, 14 Jun 2017 21:47:47 +0800</pubDate><description><![CDATA[PHP本身是没有定时功能的，PHP也不能多线程。PHP的定时任务功能必须通过和其他工具结合才能实现，例如WordPress内置了wp-cron的功能，很厉害。

一、Linux服务器上使用CronTab定时执行php
我们先从相对比较复杂的服务器执行php谈起。服务器上安装了php，就可以执行php文件，无论是否安装了nginx或Apache这样的服务器环境软件。而Linux中，使用命令行，]]></description><category></category></item><item><title><![CDATA[Yii2.0 依赖注入(DI)和依赖注入容器详解一]]></title><link>https://blog.youkuaiyun.com/xmlife/article/details/72456034</link><guid>https://blog.youkuaiyun.com/xmlife/article/details/72456034</guid><author>xmlife</author><pubDate>Thu, 18 May 2017 00:53:05 +0800</pubDate><description><![CDATA[依赖注入和依赖注入容器

为了降低代码耦合程度，提高项目的可维护性，Yii采用多许多当下最流行又相对成熟的设计模式，包括了依赖注入（Denpdency Injection, DI）和服务定位器（Service Locator）两种模式。
关于依赖注入与服务定位器， Inversion of Control Containers and the Dependency Injection pat]]></description><category></category></item><item><title><![CDATA[PHP + AJAX实现幸运转盘抽奖]]></title><link>https://blog.youkuaiyun.com/xmlife/article/details/72424348</link><guid>https://blog.youkuaiyun.com/xmlife/article/details/72424348</guid><author>xmlife</author><pubDate>Wed, 17 May 2017 19:25:44 +0800</pubDate><description><![CDATA[后端index.PHP文件：


[php] 



  /**  *   * php + ajax 幸运大转盘  * @author Sim   * @time 2014年9月25日15:37:32  * @url http://www.yiifcms.com/post/59/  *   */    //奖项初始化  $prize_arr = array(          '0']]></description><category></category></item><item><title><![CDATA[PHP中奖概率算法-按概率值排序]]></title><link>https://blog.youkuaiyun.com/xmlife/article/details/71512414</link><guid>https://blog.youkuaiyun.com/xmlife/article/details/71512414</guid><author>xmlife</author><pubDate>Tue, 09 May 2017 22:07:42 +0800</pubDate><description><![CDATA[header("Content-type: text/html; charset=utf-8");
$prize_arr = array(
'0' => array('id'=>1,'prize'=>'平板电脑','v'=>1),
'1' => array('id'=>2,'prize'=>'数码相机','v'=>5),
'2' => array('id'=>3,'prize'=>'音箱设备',']]></description><category></category></item><item><title><![CDATA[临时文件JS读写Cookie]]></title><link>https://blog.youkuaiyun.com/xmlife/article/details/54956551</link><guid>https://blog.youkuaiyun.com/xmlife/article/details/54956551</guid><author>xmlife</author><pubDate>Thu, 09 Feb 2017 21:00:31 +0800</pubDate><description><![CDATA[//添加cookie，
function addCookie(name, value, expires){
    var cookieString = name+'='+escape(value);          
    //是否设置过期时间,0代表关闭浏览器时失效 expires(s)
    if(expires>0){
        var date=new Date()]]></description><category></category></item><item><title><![CDATA[PJAX 介绍]]></title><link>https://blog.youkuaiyun.com/xmlife/article/details/54429621</link><guid>https://blog.youkuaiyun.com/xmlife/article/details/54429621</guid><author>xmlife</author><pubDate>Sat, 14 Jan 2017 22:14:48 +0800</pubDate><description><![CDATA[介绍

pushState是一个可以操作history的api，该api的介绍和使用请见这里：http://www.welefen.com/use-ajax-and-pushstate.html
目前已经有http://github.com/,
http://plus.google.com,
http://www.welefen.com 等网站已经使用。
pjax是对ajax + pu]]></description><category></category></item><item><title><![CDATA[Yii2 中 ActiveForm 和 GridView 使用 Pjax]]></title><link>https://blog.youkuaiyun.com/xmlife/article/details/54429593</link><guid>https://blog.youkuaiyun.com/xmlife/article/details/54429593</guid><author>xmlife</author><pubDate>Sat, 14 Jan 2017 22:12:01 +0800</pubDate><description><![CDATA[应用场景：
使用 ActiveForm表单修改数据后，提交表单，然后自动更新 GridView数据


如果自定义非ActiveForm表单按钮事件，可用ajax + $.pjax.reload() 代替


一个如何在 Yii2 的 GridView 和 ActiveForm 扩展中使用 Pjax 的例子。
这个例子使用一个数据库表 "countries" 字段为 id, nam]]></description><category></category></item><item><title><![CDATA[Yii2场景使用方法]]></title><link>https://blog.youkuaiyun.com/xmlife/article/details/53946749</link><guid>https://blog.youkuaiyun.com/xmlife/article/details/53946749</guid><author>xmlife</author><pubDate>Fri, 30 Dec 2016 22:31:42 +0800</pubDate><description><![CDATA[模型层：
public function rules()
{
    return [
        [['name', 'account', 'pwd'], 'string', 'max' => 11],
        ['account','required','message'=>'用户名不能为空'],
        ['pwd','required','message'=>'密码不]]></description><category></category></item></channel></rss>