首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >这段简单的php代码能做什么?

这段简单的php代码能做什么?
EN

Stack Overflow用户
提问于 2010-03-11 23:08:03
回答 3查看 362关注 0票数 4

我在浏览一个WordPress站点时,发现了下面这行

代码语言:javascript
复制
<?php if ( function_exists('dynamic_sidebar') && dynamic_sidebar(1) ) : else : ?>
    <li id="recent-posts">
        <ul>
            <?php get_archives('postbypost', 5); ?>
        <ul>
    </li>
<?php endif; ?>

冒号之前和之后到底做了什么?这东西是怎么工作的?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2010-03-11 23:10:50

该函数只有在已经声明的情况下才会执行dynamic_sidebar。冒号是PHP的alternate syntax for control structures。它们应该在模板/视图中使用。

在本例中,if看起来有一个空的主体,并且它只用于在dyanamic_sidebar存在的情况下调用它,因为如果第一次布尔检查失败,则不会调用dynamic_sidebar(1)

else将输出自身和<?php endif; ?>之间的任何内容。在这种情况下,当函数dynamic_sidebar不存在或dyanmic_sidebar(1)不返回true时,它将触发。

票数 10
EN

Stack Overflow用户

发布于 2010-03-11 23:14:42

它是一个alternative Syntax for control structure

这意味着:

代码语言:javascript
复制
 <?php 
  if (function_exists('dynamic_sidebar') && dynamic_sidebar(1)) {
  } else {
 ?>
    <li id="recent-posts">
       <ul>
        <?php get_archives('postbypost', 5); ?>
       <ul>
    </li>
 <?php
  }
  ?>
票数 4
EN

Stack Overflow用户

发布于 2010-03-11 23:20:58

调用Wordpress中的dynamic_sidebar函数时,它将显示带有传入数字id的侧边栏(在本例中,它是1)。这段代码将打印出该侧边栏(如果存在,且定义了函数dynamic_sidebar ),否则,它将打印出您所发布的代码下面的任何内容,直到边栏所在位置的行。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2426036

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档