dongyuandou2521 2017-11-03 10:33
浏览 21
已采纳

优化此PHP代码的提示

Below is the code which I'm willing to compress:

$somefield = 0;
if ($config->get('var1.one') && is_numeric($config->get('var1.one'))) {
  $somefield = $this->entityManager->getStorage('node')->load($config->get('var1.one'));
}
$different_field = 0;
if ($config->get('var2.two') && is_numeric($config->get('var2.two'))) {
  $different_field = $this->entityManager->getStorage('node')->load($config->get('var2.two'));
}
  • 写回答

2条回答 默认 最新

  • dongmu9253 2017-11-03 10:53
    关注

    After your comment, what I think you want is something like:

    $somefield = checkVar("var1.one");
    $different_field = checkVar("var2.two");
    
    function checkVar($name) {
      if ($config->get($name) && is_numeric($config->get($name))) {
        return $this->entityManager->getStorage('node')->load($config->get($name));
      } else {
        return 0;
      }
    }
    

    I think this what you wanted. The names I used are not necessarily the best ones, you should use some better suited to the actual use of the function.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?