小编Chr*_*lli的帖子

如何在MySQL中编写可以解析列中JSON数据的查询?

我在MySQL中有一个表,它有一个存储JSON对象的列.如何轻松运行WHERE子句中可能包含某些JSON字段的查询?

EX:用一个名为的表 articles

+----+---------+--------------------------------------------------------------------------------------------------+
| id | user_id | json_data                                                                                        |
+----+---------+--------------------------------------------------------------------------------------------------+
|  1 |       1 | {"url":"https://www.cpubenchmark.net/","title": "CPU Benchmarks"}                                |
|  2 |       1 | {"url":"http://www.ebay.com/sch/CPUs-Processors-/164/i.html","title": "Computer and Processors"} |
|  3 |       2 | {"url":"https://www.youtube.com/watch?v=tntOCGkgt98","title": "Funny Cats Compilation"           |
+----+---------+--------------------------------------------------------------------------------------------------+
Run Code Online (Sandbox Code Playgroud)

我希望能够写出如下内容:

   SELECT user_id, json_data FROM articles WHERE json_data.title LIKE "%CPU%"
Run Code Online (Sandbox Code Playgroud)

那应该只返回第一行.

mysql json

27
推荐指数
4
解决办法
5万
查看次数

PHP中的打包,缓存,JS和CSS,区分开发和生产环境

我正在努力使开发变得简单并且在生产中具有高度优化的输出.

我想要做的目标是:

  • 快速制作生产页面!我希望Google Page SpeedYSlow能够获得最佳分数.这意味着:
    1. 组合并压缩 JS文件和CSS,并将组放在HTML中的正确位置(页面的底部或顶部).对于.js谷歌关闭似乎是最好的选择.
    2. .JS和.CSS是智能缓存的,但请确保在更新.JS或CSS组件时重新加载它们.301文件未更改等
    3. 缓存类型:我认为磁盘上的缓存很好.如果它们显着提高速度,请考虑APC和Memcache或Redis.
    4. 能够在必要时指定和使用.JS的延迟加载,或者至少不阻止页面呈现.
    5. (可选)也压缩HTML.
  • 简化网站开发:
    1. 如果要包含.js或.css并在生产环境中仅压缩它们,请在.php文件中使用short命令
      • 使用类似pack_js(['first.js','second.js''third.js'])pack_css(['first.less','second.less''third.css'],true的语法)
      • 很容易配置开发或生产环境.也许只是调用SetDebug(true或false).默认生产
      • 轻松设置缓存文件夹源文件夹
    2. 使用LESS使CSS开发变得更少.在生产中自动编译CSS中的LESS文件,但在开发中使用LESS.js,这样每次在开发中更改.less文件时,它都会在服务器上更新.
    3. (可选)在开发中,它包括一个JS和一个LESS控制台,类似于https://www.squarefree.com/bookmarklets/webdevel.html上的shell

注意:如果Apachee模块和.htaccess文件显着加快了进程,则可以使用它们.但它应该能够快速设置它们,理想情况下只需要一个设置命令.

有没有做到这一点?或者什么是最好的资源开始?

我更喜欢一个由PHP脚本(最终几个.php文件,.htaccess和压缩可执行文件)组成的解决方案,它使用Google Closure Compiler压缩.JS并压缩/编译CSS/LESS文件,删除无用的注释和空格.可以在生产服务器上使用特殊cookie来输出开发版本.

我想拥有:

一个像以下那样可用的php函数:pack_js(['first.js','second.js','third.js']),它们写成:

在开发服务器上:

<script type="text/javascript" src="static/js/first.js"></script>
<script type="text/javascript" src="static/js/second.js"></script>
<script type="text/javascript" src="static/js/third.js"></script>
Run Code Online (Sandbox Code Playgroud)

在生产服务器上(如果不存在特殊cookie):

<script type="text/javascript" src="cache/12a42323bfe339ea9w.js"></script>
Run Code Online (Sandbox Code Playgroud)

另一个函数:pack_css(['first.less','second.less','third.css'],true)写下:

在开发服务器上: …

javascript css php deployment optimization

20
推荐指数
2
解决办法
3705
查看次数

最新的Chomium和Google Canary上的Amazon S3的CORS问题

我们的网站在使用最新版本的Chromium(版本33.0.1722.0 - 237596)和Chrome Canary在Amazon S3存储桶上加载CSS和JS资源时遇到问题.它适用于任何其他浏览器,包括当前的Chrome(31.0.1650.57).

错误是:

来自" https://mybucket.s3.amazonaws.com "的脚本已被跨源资源共享策略阻止加载:请求的资源上没有"Access-Control-Allow-Origin"标头.因此,不允许来源" https://app.example.com "访问.

我们在资源桶上的S3 CORS配置是:

<?xml version="1.0" encoding="UTF-8"?>
<CORSConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
    <CORSRule>
        <AllowedOrigin>*</AllowedOrigin>
        <AllowedMethod>GET</AllowedMethod>
        <MaxAgeSeconds>300000</MaxAgeSeconds>
        <AllowedHeader>Authorization</AllowedHeader>
    </CORSRule>
</CORSConfiguration>
Run Code Online (Sandbox Code Playgroud)

这是Chromium的错误吗?最新的CORS规格有什么变化吗?

google-chrome amazon-s3 amazon-web-services cors

16
推荐指数
4
解决办法
9805
查看次数

如何以编程方式在Google Analytics中添加注释?

Google Analytics(分析)支持注释(请参阅:https://blog.kissmetrics.com/google-analytics-annotations/).我想添加一个调用,在我们的部署脚本中为我们的Google Analytics媒体资源添加注释.

google-analytics

16
推荐指数
1
解决办法
2041
查看次数

Git完成和PS1无法正常工作:Ubuntu 12.04上的"sudo -s"或"sudo su"上的"__git_ps1:command not found"

我安装了git和git-flow完成,将这些行添加到root的.bashrc和Ubuntu 12.04机器上的normal_user:

source /etc/git-completion.bash
source /etc/git-flow-completion.bash
GIT_PS1_SHOWUPSTREAM="verbose"
GIT_PS1_SHOWDIRTYSTATE=true
PS1='\[\033[32m\]\u@\h\[\033[00m\]:\[\033[34m\]\w\[\033[31m\]$(__git_ps1)\[\033[00m\]\$ '
Run Code Online (Sandbox Code Playgroud)

当我以root身份登录或者normal_user时,git完成工作.但是,如果我使用"sudo -s"或"sudo su"git完成不起作用,每次按回车时我都会不断收到"__git_ps1:command not found".我试图删除"source"命令并使用"apt-get install bash-completion"(已经安装了bash-completion).因此,即使没有2源,我也会得到完全相同的行为.

有人知道问题是什么以及如何使其发挥作用?

git bash bash-completion

10
推荐指数
3
解决办法
2万
查看次数

Opendiff不再开始了

今天我试着在我的MacBook Pro上使用opendiff,我收到了这个错误.

xcode-select: Error: No Xcode folder is set. Run xcode-select -switch <xcode_folder_path> to set the path to the Xcode folder.
Error: /usr/bin/xcode-select returned unexpected error.
Run Code Online (Sandbox Code Playgroud)

你知道它为什么突然开始发生以及如何解决它吗?

xcode versions filemerge opendiff

5
推荐指数
2
解决办法
3872
查看次数

为什么这个函数返回"undefined"而不是数组?

这项工作:

var stepFunc = 
[
    //Step 0 (it doe not exist)
    function(){console.log("Step 0");},
    //Step 1
    (function(){
        var fFirstTime = true;
        return function(){
            console.log("Step 1");
            if (fFirstTime){
                //Do Something
            }
        }   
    })(),
    // ... Other steps
];
Run Code Online (Sandbox Code Playgroud)

这不起作用:

var stepFunc =
[ // Step 0 
    [
        function(){console.log("Step 0");},
        function(){console.log("Check Step 0");} 
    ], //Step 1         
    (function(){
        var fFirstTime = true;          
        return
        [
            function() { //Initialization function
                console.log("Step 1");
                if (fFirstTime){
                    //Do somrthing
                }
            }, function() { 
                return true;
            }
        ];      
    })(), 
    // …
Run Code Online (Sandbox Code Playgroud)

javascript arrays multidimensional-array

2
推荐指数
1
解决办法
930
查看次数