2017-11-20 1 views
2

경고 : C : \ Program Files (x86) \ Ampps \ www \ Symfony_project \ lib \ vendor \ symfony1 \ lib \ yaml \ sfYamlInline.php (138) : 라인의 런타임 생성 기능 1symfony 1.4 - 경고 : 숫자가 아닌 값이 있습니다.

사용 PHP는 7.1

if (
     (1 == count($keys) && '0' == $keys[0]) 
     || 
    Line 138-> (count($keys) > 1 && array_reduce($keys, create_function('$v,$w', 'return (integer) $v + $w;'), 0) == count($keys) * (count($keys) - 1)/2)) 

23 0.1704 3,586,632 __lambda_func() ... \ sfYamlInline.php : 138

수정 방법?

+1

Symfony 1은 5 년 후에도 유지되지 않았으므로 그 이후로 PHP 버전과 완벽하게 호환되지 않으므로 이와 같은 오류가 발생할 수 있습니다. 직접 소스를 패치하는 것 이외의 다른 옵션은 없습니다. – iainn

+0

@ chris85 그게'create_function'을위한 올바른 구문입니다 (PHP 5.3이 나온 이래로 누구도 사용해서는 안되는 것 같습니다) – iainn

+0

[LExpress/symfony1] (https://github.com/LExpress/symfony1))는 SF1 – iainn

답변

2

PHP7.1과 호환되는 symfony1 포크가 있습니다.

'return (integer) $v + $w;''return (integer) $v + (integer) $w;'으로 변경하면 쉽게 패치 할 수 있습니다.