PHP 경고 : 크기

~에 의해

0

php 경고 수정 : sizeof () : 매개 변수는 배열이거나 countable을 구현하는 객체 여야합니다.

php 경고 수정 : sizeof () : 매개 변수는 배열이거나 countable을 구현하는 객체 여야합니다.

0
PHP 경고 : 크기

많은 곳에서 나타나는 PHP 오류 WordPress Plugins 오랫동안 업데이트되지 않았거나 최신 버전의 PHP와 호환되지 않습니다. PHP 경고: sizeof(): 매개변수는 배열이거나 Countable을 구현하는 객체여야 합니다.

우리 시나리오에서는 모듈에서 PHP 오류가 발생했습니다. Cross Sell Product Display 우커머스용.

FastCGI sent in stderr: "PHP message: PHP Warning:  sizeof(): Parameter must be an array or an object that implements Countable in /web/path/public_html/wp-content/plugins/cross-sell-product-display-for-woocommerce/templates.php on line 18

PHP 경고: sizeof(): 매개변수는 배열이어야 하거나 Countable을 구현하는 객체여야 합니까?

이 PHP 오류를 생성하는 문제는 함수입니다. sizeof() PHP 7.2 이상 버전에서는 주어진 매개변수가 하나가 아닌 경우 이 오류가 발생할 수 있습니다. array 또는 인터페이스를 구현하는 객체 Countable.

따라서 PHP 버전을 업데이트한 후 오류가 자주 발생합니다.

PHP 오류를 해결하는 방법 sizeof()?

가장 간단한 방법은 함수 호출을 바꾸는 것입니다. sizeof() 함수 호출로 count().

이전 버전의 모듈을 사용하는 경우 Cross Sell Product Display, 해결책은 간단합니다. 18인치 라인의 기능은 대체될 ​​예정 templates.php.

function cdxfreewoocross_get_cross_sell_products($product_id=false){
	
	if($product_id ===false ){
		
		if(!is_product()){return false;}
		
		$product_id = (int)get_the_ID();
		if($product_id=='0'){return false;}
		
	}
	
	$crosssells = get_post_meta( $product_id, '_crosssell_ids',true);
	if ( sizeof($crosssells ) == 0  || $crosssells =='') { return false; }
	
	return $crosssells;
	
}

sizeof()가 있는 위의 코드는 다음으로 대체됩니다.

function cdxfreewoocross_get_cross_sell_products($product_id=false){
	
	if($product_id ===false ){
		
		if(!is_product()){return false;}
		
		$product_id = (int)get_the_ID();
		if($product_id=='0'){return false;}
		
	}
	
	$crosssells = get_post_meta( $product_id, '_crosssell_ids',true);
	if ( !is_array( $crosssells ) || count( $crosssells ) == 0  || $crosssells =='') { return false; }
	
	return $crosssells;
	
}

이 수정 사항은 먼저 다음 사항을 확인합니다. $crosssells 그것은 a입니다 array 기능을 사용하여 is_array() 그렇지 않으면 반환됩니다. false.

다음과 같은 경우 $crosssells 그것은 a입니다 array, 기능이 사용됩니다 count() 요소의 수를 결정하기 위해 array. 요소의 개수가 0이거나 $crosssells 빈 문자열이면 false가 반환됩니다.

이 튜토리얼에 설명이나 추가 사항이 있으면 의견을 남겨주세요.

php 경고 수정 : sizeof () : 매개 변수는 배열이거나 countable을 구현하는 객체 여야합니다.

당신은 또한에 관심이있을 수 있습니다 ...

답장을 남겨주세요

귀하의 이메일 주소는 공개되지 않습니다. 필요한 필드가 표시됩니다 *