2016-08-29 2 views
0

나는 그것이 합법적이지 않고 이상하게 보입니다. 그러나 그것은 나를 위해 필요합니다. 두 가지 프로젝트가 있습니다. 하나는 사용자 정의 장바구니이고 두 번째는 Yii에 있습니다. opencart의 주요 프로젝트. 내 Yii 프로젝트는 기본 프로젝트 루트에 보관됩니다.Yii - Yii의 부재 멤버 함수?

이제 내 opencart에서 Yii 함수를 호출하고 싶습니다. 누구든지 나를 도와 주겠다 내 주요 프로젝트에서 Yii 함수를 호출하는 방법을 알려주시겠습니까?

내 YII 기능입니다 : -

$sm=Yii::app()->getSecurityManager(); 

    if ($salt === null) 
     $salt = Yii::app()->params['password_security_salt']; 
    if($salt==null) 
     $salt=md5 (mt_rand().mt_rand().mt_rand().mt_rand()); 
    $pass=sha1($salt.$pass.$salt); 
    return $sm->hashData($pass,$key).':'.$salt; 

.....................

내가 수동으로 새로운 기능을 생성합니다 내 opencart 프로젝트. Yii (상위 함수) 함수와 같은 기능을위한 새 프로젝트를 만드는 데 도움을주십시오.

당신은 너무 같은 응용 프로그램 초기화하기로 YII 프로젝트의 외부 YII 기능을 사용할 수 있습니다
+0

해시 된 데이터를 반환하는 Yii의 컨트롤러에서 작업을 생성 한 다음이 작업을 가리키는 url을 실행할 수 있습니다. 그러나이 솔루션은 분명히 안전해야합니다! – aslawin

답변

1

: 프로젝트에 맞게 변경해야합니다 분명히 yii.php 파일 및 응용 프로그램 설정 (main.php)에 대한 경로

// this is in someotherfile.php outside of the yii project 
require_once('framework/yii.php'); 
$config = require_once('protected/config/main.php'); 
Yii::createWebApplication($config); 


// call your function 
Yii::app()->getSecurityManager(); 

을 구조

+0

내가 시도하지만이 오류가 주어진 것, 오류는 다음과 같습니다 - 정의되지 않은 상수 ROOT_PATH의 사용 - 가정 'ROOT_PATH' 오류 : - => ROOT_URL '/ appmedia을' 'appFilesUrl을'파일 /config/main.php에. 이 줄 –

+0

어디에서'ROOT_PATH'를 정의하고 있습니까? Yii 내부 또는 장바구니 안에 있습니까? –

+0

아, 당신은 장바구니에서 위와 같은 작업을 할 때 다시 정의해야 할 것이므로'define ('ROOT_PATH', "your/root/path");를 맨 위에 추가하십시오. 당신이 경로를 조정해야한다고 상상해보십시오 –