WordPress.org

Make WordPress Core


Ignore:
Timestamp:
01/16/2015 01:05:52 AM (6 years ago)
Author:
wonderboymusic
Message:

In PHP 5.0.0, is_a() became deprecated in favour of the instanceof operator. Calling is_a() would result in an E_STRICT warning.

In PHP 5.3.0, is_a() is no longer deprecated, and will therefore no longer throw E_STRICT warnings.

To avoid warnings in PHP < 5.3.0, convert all is_a() calls to $var instanceof WP_Class calls.

instanceof does not throw any error if the variable being tested is not an object, it simply returns false.

Props markoheijnen, wonderboymusic.
Fixes #25672.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/wp-includes/compat.php

    r30075 r31188  
    6666        global $wp_json;
    6767
    68         if ( !is_a($wp_json, 'Services_JSON') ) {
     68        if ( ! ( $wp_json instanceof Services_JSON ) ) {
    6969            require_once( ABSPATH . WPINC . '/class-json.php' );
    7070            $wp_json = new Services_JSON();
     
    7979        global $wp_json;
    8080
    81         if ( !is_a($wp_json, 'Services_JSON') ) {
     81        if ( ! ($wp_json instanceof Services_JSON ) ) {
    8282            require_once( ABSPATH . WPINC . '/class-json.php' );
    8383            $wp_json = new Services_JSON();
Note: See TracChangeset for help on using the changeset viewer.