When going to provide my provider settings in ad manager, under Slot-level customized targeting, my key value pair says array instead of the string value. This is cause because has chnage the way it interprets indirect expression. http://php.net/manual/en/migration70.incompatible.php

// Original expression
$entity->$entity_info['entity keys']['id'];
// PHP5: This is what we want.
$entity->{$entity_info['entity keys']['id']};
// PHP7: This is what we don't want.
($entity->$entity_info)['entity keys']['id']};
CommentFileSizeAuthor
#2 2861162-php7-compatible-fix-02.patch1.96 KBjohnle

Comments

johnle created an issue. See original summary.

johnle’s picture

StatusFileSize
new1.96 KB

Here is a patch that makes it compatible with PHP 7.

krisahil’s picture

Status: Active » Needs review

I don't have a handy PHP 7 environment to test on. Waiting for someone else to review and test.

roberttstephens’s picture

Status: Needs review » Reviewed & tested by the community

I verified functionality of ads after this, and it fixed the 'array' in the slow level customized targeting. Setting to 'Reviewed & Tested by the community. @johnle, are you able to add this into 7.x-2.x?

  • krisahil committed be7483a on 7.x-2.x authored by johnle
    Issue #2861162 by johnle, roberttstephens: Make code compatible with php...
krisahil’s picture

Status: Reviewed & tested by the community » Fixed

Committed to 7.x-2.x branch.

Status: Fixed » Closed (fixed)

Automatically closed - issue fixed for 2 weeks with no activity.