小编tuu*_*rbo的帖子

使用另一个数组排序数组

我有一系列产品,我想用另一个数组对它们进行排序.

$products = array(
  0 => 'Pro 1',
  1 => 'Pro 2',
  2 => 'Pro 3'
);

$sort = array(1,2,0);

array_multisort($products, $sort);
Run Code Online (Sandbox Code Playgroud)

阵列应该现在是...

$products = array(
  0 => 'Pro 2',
  1 => 'Pro 3',
  2 => 'Pro 1'
);
Run Code Online (Sandbox Code Playgroud)

我似乎没有正确使用array_multisort.我现在尝试了不同的方式2小时......

php

9
推荐指数
1
解决办法
3308
查看次数

缓存css和javascript

我在缓存方面遇到麻烦......

我使用这个php文件与url重写压缩和缓存css和js

我的印象是,如果我更改/更新了我的一个文件,浏览器将检索更新的文件.但除非我清除缓存或刷新页面,否则它不会.

我的编码错了吗?或者,在缓存过期期限到期之前,浏览器是否不想更新内容?

<?php
$file = $_SERVER['DOCUMENT_ROOT'].'/'.$_GET['file'];
$last_modified_time = filemtime($file);
$etag = md5_file($file);
$expires = 60*60*24*7;

if(file_exists($file))
{
    if($_SERVER['HTTP_IF_NONE_MATCH'] != $etag)
    {   
        header("Pragma: public");
        header("Cache-Control: maxage=$expires, must-revalidate");
        header('Expires: ' . gmdate('D, d M Y H:i:s', time()+$expires) . ' GMT');
        header("Last-Modified: ".gmdate("D, d M Y H:i:s", $last_modified_time)." GMT");
        header("Etag: \"{$etag}\"");

        if($_GET['type'] == 'js')  header('Content-type: application/javascript');
        if($_GET['type'] == 'css') header('Content-type: text/css');
        if($_GET['type'] == 'ico') header('Content-type: image/x-icon');

        ob_start("ob_gzhandler");       
        include($file);     
    }
    else {

        header('HTTP/1.0 304 Not Modified');
    }
}
else {

    header("HTTP/1.0 404 …
Run Code Online (Sandbox Code Playgroud)

php etag caching

4
推荐指数
1
解决办法
3759
查看次数

Angularjs选择指令,$摘要问题

我在指令中使用了一个名为selectize的第三方插件时遇到了麻烦.

我已经阅读了很多关于$ digest/$ watch的内容,但我仍然遇到问题.

我下面的例子"有效",但我正在努力防止$digest already in progress错误.

可能有更好的方法来解决这个问题,我不知道怎么做.

plunker:http://plnkr.co/edit/3JjTsEU2BlxPWHtw6HaW?p=preview

app.directive('selectize', function($parse) {
return {
  restrict: 'A',
  require: ['ngModel'],
  scope: {
    ngModel: '=',
    options: '='
  },
  link: function(scope, el, attrs) {

    var $select = el.selectize({
      valueField: 'id',
      labelField: 'name'
    });

    var selectize = $select[0].selectize;

    // add options
    angular.forEach('options', function(tag) {
      selectize.addOption(tag);
    });

    scope.$watchCollection('options', function(newTags, oldTags) {

      // why are these the same objects?
      console.log('newTags', newTags);
      console.log('oldTags', oldTags);

      if (newTags !== oldTags) {
        // clear …
Run Code Online (Sandbox Code Playgroud)

javascript angularjs angularjs-directive selectize.js

3
推荐指数
1
解决办法
3378
查看次数

社交媒体分享按钮

在stackoverflow上,在我的帖子的左侧,有3个社交媒体共享按钮.

有没有办法跟踪该人是否成功与之共享

我问,因为我跟踪"喜欢","+ 1"和"推特"分享页面的用户,但是现在我正在使用公司提供的社交按钮,如facebook,gplus,twitter,他们导致我的网站加载缓慢.如果用户想要在未来的某个时间重新共享页面,它也会导致问题,因为Facebook已经将其标记为喜欢,并且我更喜欢一种共享页面的方式.

我用我目前的javascript知识尝试了一些东西,但无法弄明白.

javascript twitter jquery facebook google-plus

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