0

このエラーが表示されますParse error: syntax error, unexpected T_DEFAULT in ../../functions.php on line 22

これは、22行目あたりのfunctions.phpセクションです(「デフォルト」は具体的には22行目です):

<?php
        break;
    default :
?>

これは、Wordpress の TwentyEleven functions.php のデフォルト コードです。残念ながら、私はまだ PHP をよく学んでいるので、エラーが発生する理由はまったくわかりません。何か案は?

ETA は完全な functions.php です。

if ( ! function_exists( 'twentyeleven_comment' ) ) :
/**
 * Template for comments and pingbacks.
 *
 * To override this walker in a child theme without modifying the comments template
 * simply create your own twentyeleven_comment(), and that function will be used instead.
 *
 * Used as a callback by wp_list_comments() for displaying the comments.
 *
 * @since Twenty Eleven 1.0
 */
function twentyeleven_comment( $comment, $args, $depth ) {
    $GLOBALS['comment'] = $comment;
    switch ( $comment->comment_type ) :
        case 'pingback' :
        case 'trackback' :
    ?>
    <li class="post pingback">
        <p><?php _e( 'Pingback:', 'twentyeleven' ); ?> <?php comment_author_link(); ?><?php edit_comment_link( __( 'Edit', 'twentyeleven' ), '<span class="edit-link">', '</span>' ); ?></p>
    <?php
            break;
        default :
    ?>
    <li <?php comment_class(); ?> id="li-comment-<?php comment_ID(); ?>">
        <article id="comment-<?php comment_ID(); ?>" class="comment">
            <footer class="comment-meta">
                <div class="comment-author vcard">
                    <?php
                        $avatar_size = 68;
                        if ( '0' != $comment->comment_parent )
                            $avatar_size = 39;

                        echo get_avatar( $comment, $avatar_size );

                        /* translators: 1: comment author, 2: date and time */
                        printf( __( '%1$s on %2$s <span class="says">said:</span>', 'twentyeleven' ),
                            sprintf( '<span class="fn">%s</span>', get_comment_author_link() ),
                            sprintf( '<a href="%1$s"><time pubdate datetime="%2$s">%3$s</time></a>',
                                esc_url( get_comment_link( $comment->comment_ID ) ),
                                get_comment_time( 'c' ),
                                /* translators: 1: date, 2: time */
                                sprintf( __( '%1$s at %2$s', 'twentyeleven' ), get_comment_date(), get_comment_time() )
                            )
                        );
                    ?>

                    <?php edit_comment_link( __( 'Edit', 'twentyeleven' ), '<span class="edit-link">', '</span>' ); ?>
                </div><!-- .comment-author .vcard -->

                <?php if ( $comment->comment_approved == '0' ) : ?>
                    <em class="comment-awaiting-moderation"><?php _e( 'Your comment is awaiting moderation.', 'twentyeleven' ); ?></em>
                    <br />
                <?php endif; ?>

            </footer>

            <div class="comment-content"><?php comment_text(); ?></div>

            <div class="reply">
                <?php comment_reply_link( array_merge( $args, array( 'reply_text' => __( 'Reply <span>&darr;</span>', 'twentyeleven' ), 'depth' => $depth, 'max_depth' => $args['max_depth'] ) ) ); ?>
            </div><!-- .reply -->
        </article><!-- #comment-## -->

    <?php
            break;
    endswitch;
}
endif; // ends check for twentyeleven_comment()
4

4 に答える 4

4

以下のコードでこの問題に遭遇しました。注: 「ケース デフォルト」の使用、これは正しくありません

switch($vars) {
  case "0":
    print '1 comment';
    break;
  case default:
    print "$vars comments";  
}

コードは次のようになります(デフォルトのみ)

switch($vars) {
  case "0":
    print '1 comment';
    break;
  default:
    print "$vars comments";

}
于 2014-04-03T02:33:47.473 に答える
0

コードをコピー/貼り付けするときに見落としました。<?php開閉を忘れました?>

于 2012-10-16T18:10:04.983 に答える
0

を削除してみてくださいdefault:。そして、このコード行が内部にあることを確認してください

switch(){

}
于 2012-10-16T18:03:11.390 に答える
0

これは通常、次の構造をとる switch ステートメントの一部のようです。

switch($aaa) {
    case 1:
        //do something
        break;
    case 2:
        //do something else
        break;
    case 3:
        ...
        ...
        ...
    default:
        /do something else again
        break;
 }

ここで必要なすべての情報を取得できますhttp://php.net/manual/en/control-structures.switch.php

于 2012-10-16T18:06:12.547 に答える