File: /var/www/delta/wp-content/plugins/sitepress-multilingual-cms/inc/hacks/missing-php-functions.php
<?php
if ( ! function_exists( '_cleanup_header_comment' ) ) {
function _cleanup_header_comment( $str ) {
return trim( preg_replace( '/\s*(?:\*\/|\?>).*/', '', $str ) );
}
}
if ( ! defined( 'E_DEPRECATED' ) ) {
define( 'E_DEPRECATED', 8192 ); }
if ( ! function_exists( 'esc_textarea' ) ) :
function esc_textarea( $text ) {
$safe_text = esc_html( $text );
return apply_filters( 'esc_textarea', $safe_text, $text );
}
endif;
/**
* This file is part of the array_column library
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*
* @copyright Copyright (c) 2013 Ben Ramsey <http://benramsey.com>
* @license http://opensource.org/licenses/MIT MIT
*/
if ( ! function_exists( 'array_column' ) ) {
/**
* Returns the values from a single column of the input array, identified by
* the $columnKey.
*
* Optionally, you may provide an $indexKey to index the values in the returned
* array by the values from the $indexKey column in the input array.
*
* @param array $input A multi-dimensional array (record set) from which to pull
* a column of values.
* @param mixed $columnKey The column of values to return. This value may be the
* integer key of the column you wish to retrieve, or it
* may be the string key name for an associative array.
* @param mixed $indexKey (Optional.) The column to use as the index/keys for
* the returned array. This value may be the integer key
* of the column, or it may be the string key name.
* @return array|false
*/
function array_column( $input = null, $columnKey = null, $indexKey = null ) {
// Using func_get_args() in order to check for proper number of
// parameters and trigger errors exactly as the built-in array_column()
// does in PHP 5.5.
$argc = func_num_args();
$params = func_get_args();
if ( $argc < 2 ) {
trigger_error( "array_column() expects at least 2 parameters, {$argc} given", E_USER_WARNING );
return null;
}
if ( ! is_array( $params[0] ) ) {
trigger_error( 'array_column() expects parameter 1 to be array, ' . gettype( $params[0] ) . ' given', E_USER_WARNING );
return null;
}
if ( ! is_int( $params[1] )
&& ! is_float( $params[1] )
&& ! is_string( $params[1] )
&& $params[1] !== null
&& ! ( is_object( $params[1] ) && method_exists( $params[1], '__toString' ) )
) {
trigger_error( 'array_column(): The column key should be either a string or an integer', E_USER_WARNING );
return false;
}
if ( isset( $params[2] )
&& ! is_int( $params[2] )
&& ! is_float( $params[2] )
&& ! is_string( $params[2] )
&& ! ( is_object( $params[2] ) && method_exists( $params[2], '__toString' ) )
) {
trigger_error( 'array_column(): The index key should be either a string or an integer', E_USER_WARNING );
return false;
}
$paramsInput = $params[0];
$paramsColumnKey = ( $params[1] !== null ) ? (string) $params[1] : null;
$paramsIndexKey = null;
if ( isset( $params[2] ) ) {
if ( is_float( $params[2] ) || is_int( $params[2] ) ) {
$paramsIndexKey = (int) $params[2];
} else {
$paramsIndexKey = (string) $params[2];
}
}
$resultArray = array();
foreach ( $paramsInput as $row ) {
$key = $value = null;
$keySet = $valueSet = false;
if ( $paramsIndexKey !== null && array_key_exists( $paramsIndexKey, $row ) ) {
$keySet = true;
$key = (string) $row[ $paramsIndexKey ];
}
if ( $paramsColumnKey === null ) {
$valueSet = true;
$value = $row;
} elseif ( is_array( $row ) && array_key_exists( $paramsColumnKey, $row ) ) {
$valueSet = true;
$value = $row[ $paramsColumnKey ];
}
if ( $valueSet ) {
if ( $keySet ) {
$resultArray[ $key ] = $value;
} else {
$resultArray[] = $value;
}
}
}
return $resultArray;
}
}
if ( ! function_exists( 'array_replace_recursive' ) ) {
function array_replace_recursive( $array, $array1 ) {
// handle the arguments, merge one by one
$args = func_get_args();
$array = $args[0];
if ( ! is_array( $array ) ) {
return $array;
}
$args_count = count( $args );
for ( $i = 1; $i < $args_count; $i ++ ) {
if ( is_array( $args[ $i ] ) ) {
$array = array_replace_recursive_recurse( $array, $args[ $i ] );
}
}
return $array;
}
function array_replace_recursive_recurse( $array, $array1 ) {
foreach ( $array1 as $key => $value ) {
// create new key in $array, if it is empty or not an array
if ( ! isset( $array[ $key ] ) || ( isset( $array[ $key ] ) && ! is_array( $array[ $key ] ) ) ) {
$array[ $key ] = array();
}
// overwrite the value in the base array
if ( is_array( $value ) ) {
$value = array_replace_recursive_recurse( $array[ $key ], $value );
}
$array[ $key ] = $value;
}
return $array;
}
}