小编Jok*_*ker的帖子

我怎么知道是否启用了任何PHP缓存?

我以前认为缓存非常难以安装所以我从来没有这样做过......在阅读了APC之后,它似乎很容易安装.我一直以为我必须修改我的应用程序中的许多PHP代码才能使用它lol.

无论如何,我想安装APC.我可以使用phpinfo()并注意它没有在页面上列出,所以它没有安装.这是否也显示在那里的各种其他缓存系统?如果我已经安装了另一个缓存系统,我不想安装APC,因为我不确定它是否会导致冲突.主机会自动为您安装这些吗?

检查是否启用了任何类型的缓存的步骤是什么?

php caching apc

24
推荐指数
2
解决办法
4万
查看次数

MySQL varchar(2000)vs text?

我需要平均存储一段文本,在数据库中约为800个字符.在极少数情况下,它可能会达到2000-2500~字符.我已经阅读了手册,我知道已经有很多这样的问题了,但我已经阅读了10多个关于stackoverflow的问题,我仍然觉得有点难以弄清楚我是否应该简单地使用文本或类似varchar( 2000).一半似乎说使用varchar,而另一半说文字.有些人说如果你有超过255个字符,总是使用文本(是的,这是在5.0.3之后允许varchar高达65k).但后来我想,如果每次字符都超过255时我都会使用文本,那么为什么mysql总是在增加大小,如果这总是最好的选择呢?

它们都有可变的存储空间我读过,所以我的情况会有所不同吗?我个人倾向于varchar(2000)然后我读到varchar存储数据内联而文本没有.这是否意味着如果我不断选择此列,将数据存储为varchar会更好,相反,如果我很少选择此列,那么使用文本会更好吗?如果这是真的,我想我现在会选择文本列,因为我不会在桌面上运行查询时多次选择此列.如果重要的话,这个表也经常加入(但不会选择列),这是否会进一步增加使用文本的好处?

我的假设是否正确,在这种情况下我应该使用文本?

mysql varchar text

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

Mysql选择枚举值

我需要选择列的枚举值.从搜索中我发现了两种方法:

SELECT column_type FROM information_schema.columns 
WHERE table_name = 'MyTable' AND column_name = 'MyColumn';
Run Code Online (Sandbox Code Playgroud)

和另外一个:

SHOW COLUMNS FROM `mytable` WHERE field = 'type'
Run Code Online (Sandbox Code Playgroud)

虽然第一个查询会给我这个信息:

enum('value1','value2','value3')
Run Code Online (Sandbox Code Playgroud)

第二个查询给了我相同的和其他列.我更愿意在没有"enum()"和逗号的情况下获取这些值,是否可能,或者我是否需要解析这些值?并不是说检查是否有更简单的方法很难.

假设没有更简单的方法,上面两个查询中的哪一个更好用?我注意到第二个查询没有显示我运行时的查询时间,我几乎认为它根本不需要任何时间.但是,如果我打开探查器,我可以看到它确实需要时间,但它似乎更快一点.那么第二个查询会更有效吗?

mysql enums

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

PHP APC要缓存还是不缓存?

我根本没有任何缓存经验,所以这看起来像是一个愚蠢的问题,但你怎么知道何时缓存你的数据?我甚至找不到一个谈论这个的网站,但它可能仅仅是我的搜索技巧或者可能需要考虑的太多变量?

我很可能会使用APC.有没有人有任何缓存它需要的数据量最少的例子?例如,假设您有一个包含100个项目的数组,并且您在其上使用foreach循环并执行一些简单的数组操作,是否应该缓存结果?如果它有1000件物品,10000件物品等怎么样?

你应该缓存数据库查询的结果吗?你应该缓存什么样的查询?我假设一个简单的选择,也许一对mysql数据库的连接语句不需要缓存,或者它呢?假设启用了mysql查询缓存,这是否意味着您不需要在应用程序层中缓存,还是应该继续执行?

如果你实例化一个对象,你应该缓存它吗?如何确定是否应该缓存?因此,关于缓存内容的一般指南会很好,示例也非常有用,谢谢.

php caching apc

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

PHP操纵多维数组值

我将结果集设置为数据库中的数组,如下所示:

array (
    0 => array (
        "a" => "something"
        "b" => "something"
        "c" => "something"
    )
    1 => array (
        "a" => "something"
        "b" => "something"
        "c" => "something"
    )
    2 => array (
        "a" => "something"
        "b" => "something"
        "c" => "something"
    )
)
Run Code Online (Sandbox Code Playgroud)

我如何应用一个函数来仅在数组键上用b替换数组的值?通常情况下,我只是使用foreach循环重建一个新数组,如果数组键是b,则应用该函数,但我不确定它是否是最好的方法.我试过看看很多数组函数,看起来像array_walk_recursive是我可能会使用的东西,但我没有运气让它做我想做的事情.如果我没有足够好地描述它,基本上我希望能够像下面的代码那样做:

$arr = array();
foreach ($result as $key => $value)
{
    foreach ($value as $key2 => $value2)
    {
        $arr[$key][$key2] = ($key2 == 'b' ? $this->_my_method($value2) : $value2);
    }    
}
Run Code Online (Sandbox Code Playgroud)

我应该坚持下去,还是有更好的方法?

php arrays

5
推荐指数
1
解决办法
7261
查看次数

jQuery选择器,用于查找每组元素中的第一个子元素

我有这个HTML:

<div id="tags">
    <ul>
        <li><input type="text" /><a href="#">First Link</a> <a href="#">Second Link</a></li>
        <li><input type="text" /><a href="#">First Link</a> <a href="#">Second Link</a></li>
        <li><input type="text" /><a href="#">First Link</a> <a href="#">Second Link</a></li>
        <li><input type="text" /><a href="#">First Link</a> <a href="#">Second Link</a></li>
        <li><input type="text" /><a href="#">First Link</a> <a href="#">Second Link</a></li>
    </ul>
</div>
Run Code Online (Sandbox Code Playgroud)

我将使用什么选择器来捕获每个li元素的第一个锚点,以及每个li的第二个锚点如何不添加任何额外的id或类?

好吧,我试过这个:

$('#tags a:last-child')
Run Code Online (Sandbox Code Playgroud)

而且我能够得到每个李的第二个锚点,但我不明白为什么会这样.一个元素不需要在锚点内部来选择一些东西,但它能够选择每个li的第二个锚点.后来我不在乎它是如何工作的,只要它有效,所以我想我会做同样的事情来得到第一个元素:

$('#tags a:first-child')
Run Code Online (Sandbox Code Playgroud)

然而,这并不适用于获得每个李的第一个锚点.有任何想法吗?

编辑: 所以我想我做得对,但它没有工作,因为我有一个输入文本框,似乎使它无法正常工作.一旦输入框存在,为什么它不再起作用?

jquery selector

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

使用CSS first-child选择第一个H2

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 
<html>
<head>
<style type="text/css">
h2:first-child
{
background:yellow;
} 
</style>
</head>
<body>
<div class="car">
    <div>Something</div>
    <h2>I want to style this</h2>
    <p>bla bla</p>
    <h2>I don't want to style this</h2>
    <p>bla bla bla</p>
</div>

</body>
</html>
Run Code Online (Sandbox Code Playgroud)

我在设置第一个h2时遇到了麻烦,"我想要设计这个样式",因为我在第一个h2之前有一个div我无法选择它,但如果它不存在它就会起作用.没有编辑html(当然没有使用js)有没有办法选择第一个h2?或者用另一个元素包装h2's,如下所示?

<div class="car">
    <div>Something</div>
<div>
        <h2>I want to style this</h2>
        <p>bla bla</p>
        <h2>I don't want to style this</h2>
        <p>bla bla bla</p>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)

html css css-selectors

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

PHP框架速度(Zend,Kohana)

我是OOP和框架的新手,我刚开始使用Zend并且今天学习了Kohana 3,这是一个更小,更轻,更"快"的框架.我可能甚至不需要Zend提供的所有功能,并且使用Kohana可能更有意义.然而,Zend似乎有更多的文档,不知何故,我似乎更容易使用.

现在我想知道的是当人们说Kohana是"快"时,当人们说Zend"慢"时,他们有多快和多慢?我不确定你是否可以通过这种方式进行比较,但是如果我在托管计划中说可以和Kohana有100个并发用户,那么Zend(因为它比较慢),我只能拥有大约90个用户?差异是小的,还是100到50之间的差异?

而且,当人们称Zend变慢时,他们主要与框架有关吗?再一次可能很难比较,但与像Drupal或Wordpress这样的CMS相比,Zend会慢吗?

它可能只是基本的估计,但你认为你可以通过显示框架/ CMS之外的数字来显示你认为可能有什么不同,我更容易理解这种方式.

例如:

Kohana - 100 (fastest)
Zend - 70
Wordpress - 60
Drupal - 40 (slowest)
Run Code Online (Sandbox Code Playgroud)

编辑:我同意速度不是一切,这也是我仍然倾向于坚持使用Zend的原因.我只是想知道Kohana真的有多快.它看起来至少快两倍.现在我想知道Zend与CMS相比有多慢.假设我有一个基本的用户和内容系统,Zend vs. Drupal开箱即用,Zend应该至少比Drupal快吗?我之前使用过Drupal并且它很慢......只要Zend比Drupal快,我想我会很高兴.

performance zend-framework kohana-3

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

jQuery Colorbox Iframe和Selector

我有这个:

$("a.money").colorbox({href:$("a.money").attr("href")+" div#content"});
Run Code Online (Sandbox Code Playgroud)

这会打开覆盖,但只打开#content选择器中的内容.如果我添加iframe:true,这将不再有效.有没有办法让它与iframe一起使用?

编辑: 我最接近它的工作是通过这样做:

$("a.money").colorbox({iframe:true, width:700, height:425,
    onComplete: function() {
        alert('test');
        $test = $("#cboxLoadedContent iframe").contents().find("#content").html();
        $("#cboxLoadedContent iframe").contents().find("#container").html($test);
    } 
});
Run Code Online (Sandbox Code Playgroud)

虽然没有警报它似乎不起作用,但我调查了一下,我想我需要使用.live(),这导致我尝试这个:

$('a.money').live('click', function() { 
    url = this.href; // this is the url of the element event is triggered from
    $.fn.colorbox({href: url, iframe:true,width:700, height:425,
        onComplete: function() {
            $test = $("#cboxLoadedContent iframe").contents().find("#content").html();
            $("#cboxLoadedContent iframe").contents().find("#container").html($test);
        } 
    });
    return false;
});
Run Code Online (Sandbox Code Playgroud)

没有工作,我仍然需要添加一个警报,使其工作.

万一你可能想知道我在做什么.网页加载到iframe中,其中包含#container中的所有元素,因此包含#header,#sidebars,但我只想在iframe中显示#content.然而,这让我意识到另一个问题.假设我在没有警报的情况下使用它,它只适用于该初始页面.例如,如果我在iframe中加载了一个表单,在提交表单后,我会再次看到整个布局而不仅仅是#content部分.是否可以继续仅在进一步导航时显示页面的#content部分?

iframe jquery colorbox

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