2015-09-17 2 views
1

У меня есть два результата: один с WP_Post Объект и другие stdClass Объект. Все они содержат одинаковые данные. Как их отличить?Объект WP_Post vs stdClass Объект

Результат 1: -

WP_Post Object 
(
    [ID] => 952 
    [post_content] => 
    [post_title] => 
    [post_excerpt] => 
    [post_status] => publish 
    [comment_status] => open 
    [ping_status] => open 
) 

Результат 2: -

stdClass Object 
(
    [ID] => 952 
    [post_content] => 
    [post_title] => 
    [post_excerpt] => 
    [post_status] => publish 
    [comment_status] => open 
    [ping_status] => open 
) 

ответ

1

Вы можете попробовать использовать InstanceOf

Как это:

if($obj instanceof WP_Post) 

Я не уверен, если это является правильным подходом, но я видел это используется в некоторых плагинов и проектов. Таким образом, в качестве возможного подхода может работать

1

использование get_class ($ объекта), чтобы получить имя класса объекта и в вашем случае это будет возвращать StdClass и WP_Post как для соответствующих объектов

см PHP.net руководство более подробно http://php.net/manual/en/function.get-class.php