小编Ker*_*rri的帖子

使用LESS CSS定义变量变量

假设我有三个单独的配色方案,用于网站的各个页面.每种颜色都定义了浅色,中色和深色,并且颜色方案由体内的类定义.假设"红色"颜色方案是默认颜色.像这样:

颜色定义:

@red-lt:   #121;
@red-md:   #232;
@red-dk:   #343;
@green-lt: #454;
@green-md: #565;
@green-dk: #676;
@blue-lt:  #787;
@blue-md:  #898;
@blue-dk:  #909;
Run Code Online (Sandbox Code Playgroud)

基本默认样式示例

body { background-color: @red-dk;
  #container { background-color: @red-md;
     p { color: @red-dk; }
  }
}
Run Code Online (Sandbox Code Playgroud)

不同颜色方案样式示例

body.green { background-color: @green-dk;
  #container { background-color: @green-md;
     p { color: @green-dk; }
  }
}
Run Code Online (Sandbox Code Playgroud)

我想使用变量,这样我就不必重新编写每个方案的所有颜色变化,这样我就可以这样编写:

body.[color-var] { background-color: @[color-var]-dk;
  #container { background-color: @[color-var]-md;
     p { color: @[color-var]-dk; }
  }
}
Run Code Online (Sandbox Code Playgroud)

......但我无法完全理解如何实现这一目标.救命…?

css less

42
推荐指数
3
解决办法
7万
查看次数

从服务器下载时,.exe文件已损坏

首先:我是一个低级的网页设计师,他知道足够的PHP是危险的,而且对服务器管理来说就足够了.除非你很清楚,否则我可能不会理解你!

设置:我已经建立了一个网站,客户端将文件上传到特定目录,这些文件通过php提供,供用户下载.这些文件通常是50MB以上的可执行文件.客户端不希望他们压缩,因为他们觉得他们的用户不够精明,无法解压缩.我正在使用下面的php强制下载对话框并隐藏文件所在的目录.

这是Linux服务器,如果这有所作为.

问题:用户尝试下载后,某个文件会损坏.它是一个可执行文件,但是当它被单击时,会打开一个空白的DOS窗口.下载之前的原始文件打开完美.还有其他几个类似的文件经过相同的下载程序,所有这些都可以正常工作.

我尝试过的事情:我尝试上传压缩后的文件,然后在服务器上解压缩以确保它在上传过程中没有损坏,并且没有运气.
我还将原始文件的二进制代码与不起作用的下载文件进行了比较,它们完全相同(因此php不会意外地在文件中插入任何额外内容).

可能是我的downloadFile函数中的标题有问题吗?我真的不确定如何解决这个问题......

这是下载php,如果它是相关的($ filenamereplace在别处定义):

downloadFile("../DIRECTORY/files/$filenamereplace","$filenamereplace");

function downloadFile($file,$filename){    
    if(file_exists($file)) {
        header('Content-Description: File Transfer');
        header('Content-Type: application/octet-stream');
        header('Content-Disposition: attachment; filename="'.$filename.'"');
        header('Content-Transfer-Encoding: binary');
        header('Expires: 0');
        header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
        header('Pragma: public');
        header('Content-Length: ' . filesize($file));
        @ flush();
        readfile($file);
        exit;
    }
}
Run Code Online (Sandbox Code Playgroud)

ETA Additonal Info: - 工作/非工作文件的测试已在同一台机器上完成 - 如果有任何不同,原始文件有一个自定义图标.下载后,该文件具有通用空白文档图标.

添加信息:我认为这一点非常重要! 我只是尝试直接下载文件(绕过触发上面的下载功能的下载链接).如果我只是通过它的URL下载文件并以这种方式下载它,下载的文件就可以了.所以我认为它必须与下载功能有关.但是什么?

3/17主要更正 - 并已解决 - 所以我今天早上醒来,我突然意识到我可能正在比较错误的文件.(我已将它们重新保存为二进制文本,然后对它们进行比较.我没有意识到比较程序将采用并比较实际的exe文件).今天早上我尝试比较实际的exe文件,但有一点不同.有一行PHP代码被注入到文件的第一行.我调整了php,问题得到解决.(它来自if/else语句,在我引用的代码中定义了teh $ filenamereplace变量).再次感谢您的帮助,并抱歉误导您坚持文件的内容完全相同!

php file-upload download

7
推荐指数
1
解决办法
2379
查看次数

检查集合中的连续日期并返回范围

我有日期Ymd格式的数组,可以是相隔一天的十个设定日期的任意组合.

这是全套:

2011-01-01,2011-01-02,2011-01-03,2011-01-04,2011-01-05,2011-01-06,2011-01-07,2011-01-08,2011- 01-09,2011-01-10

从该集创建的数组可以是日期的任意组合 - 所有数组,其中一个,一些连续,全部连续等.

我现在把它们打印得很漂亮.例如,这是一个可能的结果:

2011-01-02

2011-01-03

2011-01-04

2011-01-08

(实际打印的内容更像是"1月2日星期五......",但我们会坚持使用简单的日期字符串)

我想压缩它,以便如果连续三天或更多天,那些就成了一个范围,例如上面的例子会变成:

2011-01-02至2011-01-04

2011-01-08

最终会成为:

1月2日星期日 - 1月4日星期二

1月8日星期六

有没有办法循环并检查时差,创建范围的开始时间和结束时间,然后收集落后者?

php date

6
推荐指数
1
解决办法
4721
查看次数

按索引合并两个数组

好吧,如果觉得这应该是很简单的,并通过一个函数来完成类似array_merge()array_merge_recursive,但我不能完全弄清楚.我有两个简单的数组,如下面的(简化)示例.我只是想根据它们的索引将它们合并到一个数组中.

$ array 1:

Array ( 
  [0] => Array ( 
        [ID] => 201 
        [latLng] => 45.5234515, -122.6762071 
  )  
  [1] => Array ( 
        [ID] => 199 
        [latLng] => 37.7931446, -122.39466520000002 
  )
) 
Run Code Online (Sandbox Code Playgroud)

等等…

$ array2:

Array ( 
  [0] => Array ( 
        [distance] => 1000 
        [time] => 10 
  )  
  [1] => Array ( 
        [distance] => 1500 
        [time] => 15 
  )
) 
Run Code Online (Sandbox Code Playgroud)

$ desiredResult:

Array ( 
  [0] => Array ( 
        [ID] => 201 
        [latLng] => 45.5234515, -122.6762071 
        [distance] => …
Run Code Online (Sandbox Code Playgroud)

php arrays array-merge

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

"变量"语法

这是一个与获取Drupal CCK字段相关的问题(以防万一碰巧改变了什么).

我有几个名字相似的Drupal CCK字段.它们的名称与末尾的数字相同.我想从这些字段中提取值(总计十个字段).这是访问字段值的语法:

$node->cck_field_1[0]['value']
$node->cck_field_2[0]['value']
$node->cck_field_3[0]['value']
Run Code Online (Sandbox Code Playgroud)

…等等.

因为它们都是单独的字段,但是它们已被编号,我想逐步循环以写出我需要的东西(除了访问这些字段的数据之外,还有更多我正在写的内容,但它们"其余的决定性因素",但我无法弄清楚如何将变量插入代码的那一部分.

例如,(如果$i是增量数字变量),我希望能够将以下字符串写为变量:

'$node->cck_field_' . $i . '[0]["value"]'
Run Code Online (Sandbox Code Playgroud)

我理解使用花括号从字符串创建变量名称,但我需要变量的部分需要在字符串之外.例如,这工作:

${node}->cck_field_1[0]['value']
Run Code Online (Sandbox Code Playgroud)

但这不是:

${node->cck_field_1}[0]['value']
Run Code Online (Sandbox Code Playgroud)

(所以我不能写${'node->cck_field'.$i}[0]['value'])

那么如何写这个以便我可以使用$ i代替数字呢?

drupal cck variable-variables

0
推荐指数
1
解决办法
88
查看次数

标签 统计

php ×3

array-merge ×1

arrays ×1

cck ×1

css ×1

date ×1

download ×1

drupal ×1

file-upload ×1

less ×1

variable-variables ×1