1
페이스 북 SDK를 가져 오려고하는데 디렉토리 이름이 "php-sdk-3.2.2"이고 가져올 때 - "Yii :: import ('ext.yii-facebook-opengraph.php- sdk-3.2.2 '); " SDK 버전이 가져 오기를 위반합니다.yii 가져 오기 디렉토리 구분자
페이스 북 SDK를 가져 오려고하는데 디렉토리 이름이 "php-sdk-3.2.2"이고 가져올 때 - "Yii :: import ('ext.yii-facebook-opengraph.php- sdk-3.2.2 '); " SDK 버전이 가져 오기를 위반합니다.yii 가져 오기 디렉토리 구분자
tinyByte에 언급 된대로 파일/디렉토리 이름을 변경해야합니다. 그 주위에는 간단한 방법이 없습니다.
YII 가져 오기 기능을 사용하면 당신이 핵심을 수정하지 않는 한, 문자열을 구문 분석 strpos를 사용하여 참조 (또는 YII :: Base를 확장 할 수 있습니다으로
public static function getPathOfAlias($alias)
{
if(isset(self::$_aliases[$alias]))
return self::$_aliases[$alias];
elseif(($pos=strpos($alias,'.'))!==false)
{
$rootAlias=substr($alias,0,$pos);
if(isset(self::$_aliases[$rootAlias]))
return self::$_aliases[$alias]=rtrim(self::$_aliases[$rootAlias].DIRECTORY_SEPARATOR.str_replace('.',DIRECTORY_SEPARATOR,substr($alias,$pos+1)),'*'.DIRECTORY_SEPARATOR);
elseif(self::$_app instanceof CWebApplication)
{
if(self::$_app->findModule($rootAlias)!==null)
return self::getPathOfAlias($alias);
}
}
return false;
}
아래로 YII ::베이스에 정의되어 getPathOfAlias를 호출)를 사용하여 이스케이프 논리를 작성하여 디렉토리 이름을 '.' 디렉토리 이름을 "."과 함께 사용할 수 없습니다. 그들 안에. 몇 가지 이유가 단순히 점
ln -s /path/to/extensions/yii-facebook-opengraph/php-sdk-3.2.2/ /path/to/extensions/yii-facebook-opengraph/php-sdk-3-2-2/
및
Yii::import('ext.yii-facebook-opengraph.php-sdk-3-2-2'
로 YII에 관계없이 심볼릭 링크를 생성하기위한 디렉터리 이름을 변경할 수없는 경우
당신은 당신이 경우, 점을 제거 할 수있어 우리와 함께 나누고 더 좋은 길을 찾았습니다. – tinybyte