小编eme*_*his的帖子

git pull选项可以防止合并冲突

是否有选项在执行git pull此操作时不允许任何合并冲突的可能性?我看过合并策略,但似乎没有符合这种描述.我正在寻找一个类似的选项git pull --quit_if_possible_merge

基本上,想要一个拉到生产站点的命令,没有任何合并冲突的风险,这会在我们解决时暂时导致网站崩溃.

git git-merge

8
推荐指数
1
解决办法
7075
查看次数

从数组值中分配PHP变量的最快方法,可能不存在错误

这是一种代码高尔夫,但我觉得这不是主题,因为问题实际上是在我工作时经常出现的,并且保持代码简洁和可读是非常关键话题.

//$array = ['A' => 'FOO', 'B' => 'BAR'];
//We don't necessarily know what this is

// :-)
$variable = ( isset($array['A']) ) ? $array['A'] : NULL ); 
//We just want $variable to be NULL if the key isn't in the array
Run Code Online (Sandbox Code Playgroud)

工作正常,但变长名称等变得很长,这使得很难读取大型多维数组......

[
    'Foo' => 'Bar',
    'Boo' => [
         'FooBarMacFooBar' => ( isset($SomeOtherLongVariable['BooBarMcFooFar']) ) ? $SomeOtherLongVariable['BooBarMcFooFar'] : NULL )
     ] ; 
]
Run Code Online (Sandbox Code Playgroud)

除了丑陋且难以阅读之外,它不符合PSR-2的线宽最大值(80?).

如果我这样做,飞机不会崩溃......

[
    'Foo' => 'Bar',
    'Boo' => [
         // THIS WILL THROW AND ERROR …
Run Code Online (Sandbox Code Playgroud)

php arrays coding-style variable-assignment

8
推荐指数
1
解决办法
74
查看次数

通过页面重新加载来诊断内存泄漏

我怀疑我的单页javascript应用程序包含某处内存泄漏.如果页面处于打开状态,运行Firefox或Chrome的弱设备似乎最终会崩溃.我正在尝试确定是否需要重新加载页面以释放内存.

我了解内存处理特定于浏览器,因此Chrome或Firefox的答案可能有所不同.

注意:我认识到在这个问题中提到了很多浏览器(这将是偏离主题),但这个问题的关键是关于javascript调试,我认为这是非常主题.

javascript firefox memory-leaks google-chrome

8
推荐指数
1
解决办法
2102
查看次数

border-radius + gradient + box-shadow导致边缘不规则

当我将border-radius和背景渐变应用于<li>圆角时看起来粗糙和粗糙.看看这个jsfiddle

我在Chrome和FF中看到了这一点.如果我删除渐变或边界半径,问题就会消失.

任何想法为什么会发生这种情况以及我如何解决它?

更新: 我正在开发一个基于Josh F的想法的jQuery解决方案(请参阅下面的完整答案).这是一个简单的jQuery函数,它附加了元素的副本.目前,脚本设置目标元素的定位relative.(在某些情况下,我可以看到这是有问题的.)我的代码在jsfiddle 这里.

css css3

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

MySQL将某些结果组合成一个数组

我正在编写一个带有多个LEFT JOINs 的复杂MySQL查询来组合来自几个不同表的数据.

$public_query = 
"SELECT * FROM  `wsat_ib` 
LEFT JOIN wp_usermeta ON wsat_ib.user_id = wp_usermeta.user_id
LEFT JOIN wpjb_resume ON wsat_ib.user_id = wpjb_resume.user_id
LEFT JOIN wpjb_field_value ON wpjb_resume.id=wpjb_field_value.job_id 
LEFT JOIN wpjb_application ON wpjb_application.user_id = wsat_ib.user_id
WHERE wp_usermeta.meta_key =  'target_employer'
AND wp_usermeta.meta_value =  'public'
AND wpjb_resume.is_active =1
";
Run Code Online (Sandbox Code Playgroud)

我的问题:表wp_usermeta可以为同一个user_id有多行.例如,用户(具有user_id = 5)可以在表wp_usermeta中具有多于一行,其字段为:meta_key,即"target_employer".如果不清楚,行可能看起来像这样.

id    user_id    meta_key           meta_value
1     5          target_employer    13
2     5          target_employer    53
3     79         target_employer    21
Run Code Online (Sandbox Code Playgroud)

我的问题:有什么方法可以将wp_usermeta中的每个匹配行作为数组返回到我的一个结果对象中?所以var_dump()会是这个样子:

object(stdClass)#2906 (14) {
  ["user_id"]=>
  string(4) "5"
  ["firstname"]=> …
Run Code Online (Sandbox Code Playgroud)

php mysql join left-join

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

MVC:更正来自不同模型的对象的模式

我正在使用CakePHP2.3,我的应用程序在模型之间有很多关联.控制器动作通常涉及操纵来自另一个模型的数据,这是很常见的.所以我开始在模型类中编写一个方法来保持控制器的粗糙......但在这些情况下,我不确定该方法应该采用哪种模型?

这是一个例子.说我有两个模型:书和作者.作者有很多书.在/ books/add视图中,我可能希望显示一个热门作者的下拉列表,供用户选择与该书相关联.所以我需要在两个模型之一中编写一个方法.我是不是该...

A.在Author模型类中编写一个方法,并从BooksController :: add()内部调用该方法...

$this->Author->get_popular_authors()
Run Code Online (Sandbox Code Playgroud)

B.在Book模型类中编写一个实例化其他模型并使用它的查找函数的方法...例如:

//Inside Book::get_popular_authors()
$Author = new Author();
$populars = $Author->find('all', $options);
return $populars;
Run Code Online (Sandbox Code Playgroud)

我认为我的问题与"编写主要处理另一个模型之间关联的模型方法的最佳实践是什么?"相同.如何最好地确定该方法应属于哪种模型?提前致谢.

PS:我不想听你是否认为CakePHP糟透了或不是"真正的"MVC.这个问题是关于MVC设计模式,而不是框架.

activerecord design-patterns cakephp cakephp-2.0

7
推荐指数
2
解决办法
598
查看次数

Chrome开发者工具窗口尺寸不一致

当您打开Chrome开发人员工具并调整窗口大小时,右上角会出现一个小白框,告诉您调整窗口大小时的大小.我在下面的截图中用一个绿色的大箭头标记了它.

这是一个非常有用的工具,但我注意到这些值经常出乎意料并且与其他元素的宽度不一致.例如,当我在下面截取屏幕截图时,Chrome表示窗口宽度为419像素.但是,如果我点击html宽度应为100%的元素,Chrome会告诉我它的宽度是404px.这对我来说很困惑.他们为什么不同?这是Chrome中的错误吗?

Chrome开发者工具窗口大小指示器

css google-chrome developer-tools google-chrome-devtools

7
推荐指数
2
解决办法
8356
查看次数

如何使用%均匀地扩展内联SVG

我正在尝试在流体上下文中使用SVG元素,使用%单位来设置与容器成比例的大小.

如果您包含像图像一样的SVG设计,它就像一个图像:

<img class="img-svg" src="box.svg" />
Run Code Online (Sandbox Code Playgroud)

您可以使用CSS轻松地按比例缩放它,如下所示:

.img-svg { width:100%; height: auto; }
Run Code Online (Sandbox Code Playgroud)

如果你使用内联SVG,一切都会改变......

<svg class="inline-svg" preserveAspectRatio="xMidYMid meet" viewBox="...">
    ...
</svg>
Run Code Online (Sandbox Code Playgroud)

这不会起作用:

.inline-svg { display:block; width:100%; height: auto; }
Run Code Online (Sandbox Code Playgroud)

如果你这样做,它会将SVG的盒子扩展到100%,但它内部的所有元素都将保持相同的大小.这是一个jsfiddle:http://jsfiddle.net/s_d_p/jA62R/

正确的方法是什么,以便SVG中的内容统一向上/向下扩展?

注1:我正在寻找一个CSS/SVG解决方案.不是一个javascript黑客.

NOte2:我发现了这个,但它依赖于固定px单位.

html css svg

7
推荐指数
2
解决办法
5061
查看次数

如何将旧的Wordpress博客帖子重定向到新的

我的Wordpress网站的博客帖子URL看起来像这样:

http://example.com/some-random-blog-post-name http://example.com/other-random-blog-post-name http://example.com/in-case-you-dont-get-the-point-theyre-all-different

在我的新Wordpress网站上,我希望它们存在于它们所属的/ blog /子目录中:

http://example.com/blog/some-random-blog-post-name

这有点棘手的是旧的URL不遵循任何模式,所以我认为我需要匹配任何未被识别的东西.像这样的东西几乎可以工作......

# Redirect unmatched blog posts to /blog/*
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !blog
RewriteCond %{HTTP_HOST} ^example.com [NC,OR]
RewriteRule ^(.*)$ https://example.com/blog/$1 [L,R=301,NC]
</IfModule>
Run Code Online (Sandbox Code Playgroud)

...但它与Wordpress自己的RewriteRules冲突,并打破了所有应该通过的其他网站页面.

那么我该如何实现以下目标:

example.com/some-random-post301 - > example.com/blog/some-random-post example.com/another-random-post301 - >example.com/blog/another-random-post

example.com/contact/ - >(无重定向)

php wordpress .htaccess mod-rewrite redirect

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

用于对两个竞争对象建模的设计模式

我正在试图找出用于管理两个交互对象之间"竞争"的最佳设计模式.例如,如果我想要Fox一个Rabbit通过简单环境追逐类的类.我想让他们"竞争"并找出哪一个获胜.最终它将成为学生可以用来试验继承和其他OO编程技能的教学工具.

这个用例是否有既定的设计模式?

这是我能想到的最好的:一个表示托管其他对象的环境的类.我保持它非常简单,并假设动物只是直线运行而狐狸抓住兔子,如果他足够接近咬兔子.这是一些代码,展示了我所描述的内容.我使用PHP是因为我可以快速编写它,但我不想专注于语言的细节.我的问题是关于设计模式/架构.

class Forrest() {
        public $fox;
        public $rabbit;
        public $width = 100; //meters?
        public $length = 100;

        __construct() {
                $this->fox = new Fox();
                $this->rabbit = new Rabbit();
                $this->theChase();
        }

        public function theChase() {
                 while (!$this->rabbit->isBitten) {
                         $this->rabbit->react($fox);
                         $this->fox->react($rabbit);
                 }
                 log('The fox got the rabbit!');
        }
}

abstract class Animal() {
        public $speed;
        public $hasTeeth = false;
        public $position;
        public $direction;
        public $isBitten = false;
        public function run($distance) {
                // update coordinates based on direction …
Run Code Online (Sandbox Code Playgroud)

events design-patterns software-design game-engine game-loop

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