zblogcn / zblogphp

Z-BlogPHP博客程序
https://www.zblogcn.com
MIT License
813 stars 255 forks source link

zblogphp.php 中 Load()的一点小疑问 #332

Closed mbzshare closed 1 year ago

mbzshare commented 2 years ago

zblog版本号1723040,在zblogphp.php文件中的 Load() 方法中: $this->isloadcategories || $this->LoadCategories(); isloadcategories不论是false还是true都会执行后面的 $this->LoadCategories(),感觉isloadcategories没啥意义啊 之所以有这个疑问是因为:主题开发时,分类模块等是主图按需进行处理,所以不想让在这里就进行加载,所以想通过 Filter_Plugin_Zbp_Load_Pre hooks 将isloadcategories设置为false,发现设置为false是没啥用的...

vainl commented 2 years ago

PHP中的逻辑运算会惰性求值,就是当能求出值时,就不会继续运算。所以当$this->isloadcategories == true时,可以求出表达式的值为true,将不会再求$this->LoadCategories()的值。 具体可以参考官方文档:https://www.php.net/manual/zh/language.operators.logical.php#example-121

mbzshare commented 2 years ago

谢谢解答,晓得了