get_comment

Definition:
function &get_comment(&$comment, $output = OBJECT) {}

Retrieves comment data given a comment ID or comment object.
If an object is passed then the comment data will be cached and then returned after being passed through a filter. If the comment is empty, then the global comment variable will be used, if it is set.

Parameters

  • object|string|int $comment: Comment to retrieve.
  • string $output: Optional. OBJECT or ARRAY_A or ARRAY_N constants.
  • &$comment

Return values

returns:Depends on $output value.

Defined filters

  • get_comment
    apply_filters('get_comment', $_comment)

Source code

function &get_comment(&$comment, $output = OBJECT) {

	global $wpdb;

	$null = null;



	if ( empty($comment) ) {

		if ( isset($GLOBALS['comment']) )

			$_comment = & $GLOBALS['comment'];

		else

			$_comment = null;

	} elseif ( is_object($comment) ) {

		wp_cache_add($comment->comment_ID, $comment, 'comment');

		$_comment = $comment;

	} else {

		if ( isset($GLOBALS['comment']) && ($GLOBALS['comment']->comment_ID == $comment) ) {

			$_comment = & $GLOBALS['comment'];

		} elseif ( ! $_comment = wp_cache_get($comment, 'comment') ) {

			$_comment = $wpdb->get_row($wpdb->prepare("SELECT * FROM $wpdb->comments WHERE comment_ID = %d LIMIT 1", $comment));

			if ( ! $_comment )

				return $null;

			wp_cache_add($_comment->comment_ID, $_comment, 'comment');

		}

	}



	$_comment = apply_filters('get_comment', $_comment);



	if ( $output == OBJECT ) {

		return $_comment;

	} elseif ( $output == ARRAY_A ) {

		$__comment = get_object_vars($_comment);

		return $__comment;

	} elseif ( $output == ARRAY_N ) {

		$__comment = array_values(get_object_vars($_comment));

		return $__comment;

	} else {

		return $_comment;

	}

}

1276

No comments yet... Be the first to leave a reply!

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: