2012-09-14 5 views
-1
<?php 

require_once 'braintree-php-2.14.0/lib/Braintree.php'; 
require_once __DIR__ . 'silex/vendor/autoload.php'; 
Braintree_Configuration::environment('sandbox'); 
Braintree_Configuration::merchantId('...'); 
Braintree_Configuration::publicKey('...'); 
Braintree_Configuration::privateKey('...'); 
$app = new Silex\Application(); 
$app->get('/', function() { 
    include 'views/form.php'; 
}); 
$app->run(); 
//$app->get("/braintree-php-2.14.0", function() { 
$app->get("/braintree", function() { 
    include 'views/response.php'; 
}); 
?> 

이 명확하지만 해결 내가 설명서를 참조 브레인 지불 시스템은 구문 오류, 라인 /localhost/braintree/app.php 예기치 않은 T_FUNCTION입니다 .error는 다음 줄에서 찾을 수 있습니다 : $ app-> get ("/ braintree", function() {사람이 나 오류 ::: 구문 분석 오류 해결하는 데 도움이 될 수 있습니다 : 14

+9

위의 게시판에 게시 된 merchantid/publickey/privatekey가 가짜/devel 버전이 아니라면, 모든 사람이 사용할 수 있도록 웹 사이틀을 통해 방금 석판에 게시 했으므로 새로운 발행물을 발행하는 것이 좋습니다. –

+0

그게 유일한 오류라고 확신합니까? 라인에 대해 확실합니까? 이전 버전의 PHP는 익명의 함수가 없기 때문에 물어 보았습니다. $ app-> get ('/', function() {' – Aatch

+0

localhost와 PHP PHP 5.3을 가지고 있습니다. 버전은 5.2입니다. – Zeeshan

답변

2

익명 함수는 PHP 5.3 이상에서만 사용 가능합니다. 서버를 최신 PHP 버전으로 업그레이드 할 것을 제안합니다.

또 다른 문제는 응답 훅을 추가하기 전에 $ app-> run()을 호출하는 것일 수 있습니다. run() 호출 끝까지. 당신이 PHP를 업그레이드 할 수없는 경우

는 다음과 같은 수정 작업을해야합니다 :

<?php 
require_once 'braintree-php-2.14.0/lib/Braintree.php'; 
require_once __DIR__ . 'silex/vendor/autoload.php'; 
Braintree_Configuration::environment('sandbox'); 
Braintree_Configuration::merchantId('...'); 
Braintree_Configuration::publicKey('...'); 
Braintree_Configuration::privateKey('...'); 
$app = new Silex\Application(); 
function form() { 
    include 'views/form.php'; 
} 
$app->get('/', form); 
function response() { 
    include 'views/response.php'; 
} 
$app->get("/braintree", response); 
$app->run(); 
?> 

다른 이유는 정말 PHP 5.4처럼 테스트 및 많은 디버깅을 쉽게 만드는 것이 includes a lightweight (ie not for production) server 그. 나는 Braintree 개발자이고 이것이 나온 가이드가 썼다. 그래서 나는 이것이 도움이되기를 바란다!

+0

+1 PHP v5.6으로 업그레이드했고 제대로 작동했습니다. –