wang321

wang321

这家伙有点懒,还没写个性签名!

  • 财富值35
  • 威望值0
  • 总积分105

个人信息

  • 2016-08-15 已签到
    连续签到1天,获得了5个金钱
  • 2016-08-10 已签到
    连续签到1天,获得了5个金钱
  • 赞了回答

    每一个action都应该独一无二。不应该存在调用关系。若有公共部分,请放于model或者helper。

    如果非要调用,也不是不可以。毕竟controller的本质是一个类,而action的本质是一个类中的function。

    那么就在需要调用的类的开头use 被调用类的全命名空间。

    然后实例化调用之。

  • 2016-08-02 已签到
    连续签到1天,获得了5个金钱
  • 回复了 的回答

    1、看是否有缓存:
    方法一:看缓存文件
    先关闭页面缓存,删除runtime/cache下的所有缓存,刷新页面,观察生成了几个缓存文件。
    然后打开页面缓存,再次刷新页面,观察是否有更多的缓存文件生成,如果有,缓存成功。
    方法二:看调试信息
    如果你有打开debug面板,那么在你访问的页面缓存生效期间,不管刷新几次页面,下方的debug面板上的参数(页面加载时间/time,数据库查询时间/DB time,等)是不会变化的,因为这个值是被缓存页面的信息。
    如果没有缓存,这些参数是会有波动。

    2、如果缓存成功,文件会是runtime/cache目录下

    3、缓存文件不能自定义,这个是系统底层做的事,不用你干预,你只管用就行了。
    你能定义的是缓存的变量名,如果你只需缓存部分数据
    写缓存$cache->set($key, $data)
    读缓存$data = $cache->get($key);
    至于缓存文件具体在哪个位置,与你无关。
    比如你存¥100到支付宝,不用关心这¥100具体在放哪了,只要账号密码对了,在哪都能买¥100的东西。


    09:27:09.129 16.2 ms SELECT SELECT FROM goods WHERE ((deleted=0) AND (shelves=1)) AND (price > 0)
    1 09:28:28.510 14.8 ms SELECT SELECT
    FROM goods WHERE ((deleted=0) AND (shelves=1)) AND (price > 0)
    我按f5刷新了页面,看了debug里面的参数,还是又执行新的数据库查询。 求大神指点下

  • 回复了 的回答

    如果你的依赖语句是count,你可以修改其中一条数据,看你页面显示是否你修改的值,如果在有效期内不是你修改的值,则缓存有效

    。。。改了标签后,刷新页面出来的是改过的值,看着又去执行数据库查询了。。。

  • 回复了 的回答

    如果你的依赖语句是count,你可以修改其中一条数据,看你页面显示是否你修改的值,如果在有效期内不是你修改的值,则缓存有效

    return [
        'pageCache' => [
           'class' => 'yii\filters\PageCache',
            'only' => ['index'],
            'duration' => 3600,
    ],
    

    sql依赖的暂时先不考虑,目前最简单的配置后,感觉缓存一直没有生效。 我现在把缓存时间调为一小时,且不依赖sql,是不是我改视图标签,刷新页面,显示的应该是以前的值吧?

  • 回复了 的回答

    1、看是否有缓存:
    方法一:看缓存文件
    先关闭页面缓存,删除runtime/cache下的所有缓存,刷新页面,观察生成了几个缓存文件。
    然后打开页面缓存,再次刷新页面,观察是否有更多的缓存文件生成,如果有,缓存成功。
    方法二:看调试信息
    如果你有打开debug面板,那么在你访问的页面缓存生效期间,不管刷新几次页面,下方的debug面板上的参数(页面加载时间/time,数据库查询时间/DB time,等)是不会变化的,因为这个值是被缓存页面的信息。
    如果没有缓存,这些参数是会有波动。

    2、如果缓存成功,文件会是runtime/cache目录下

    3、缓存文件不能自定义,这个是系统底层做的事,不用你干预,你只管用就行了。
    你能定义的是缓存的变量名,如果你只需缓存部分数据
    写缓存$cache->set($key, $data)
    读缓存$data = $cache->get($key);
    至于缓存文件具体在哪个位置,与你无关。
    比如你存¥100到支付宝,不用关心这¥100具体在放哪了,只要账号密码对了,在哪都能买¥100的东西。

    hi请问下,目前return已经配置成最简单的,但是还是没有runtime/cache这个文件目录。
    其次看了debug,每次刷新页面都有执行数据库,应该是缓存没有生效。不知道还有哪里有问题呢?

  • 提出了问题
    页面缓存问题,memcache
  • PHP Parse Error – yii\base\ErrorException

    syntax error, unexpected end of file

    追加下,最上方提示这个错误

助理 等级规则
105/200
资料完整度
10/100
用户活跃度
0/100

Ta的关注

2

Ta的粉丝

2

Ta的访客

2