ホームページ  >  記事  >  バックエンド開発  >  php ファイルとプラグインを Yii にエクスポートする

php ファイルとプラグインを Yii にエクスポートする

WBOY
WBOYオリジナル
2016-06-13 13:11:33840ブラウズ

Yii に PHP ファイルとプラグインを導入する
著者: zccst
1. 環境変数を設定します (PHP で)

echo get_include_path() // 現在の環境変数をすべて取得します。つまり、プロジェクト内のそれらのコードは参照されています。
set_include_path('.'. PATH_SEPARATOR . Yii::app()->basePath.'/lib/PHPExcel' . PATH_SEPARATOR . get_include_path()); //環境変数を追加して先頭に記述します。
echo get_include_path();

2 つの違いから、新しい環境変数を正常に設定するために set_include_path() 関数が使用されていることがわかります。

2. YII の

1、Yii::import("application.lib.PHPExcel.*");
説明:
アプリケーション保護されたフォルダーに相当します。


2. Yii の ../config/main.php にベースパス

return array(
	'basePath'=>dirname(__FILE__).DIRECTORY_SEPARATOR.'..',
  ......
    // autoloading model and component classes
	'import'=>array(
		'application.models.*',
		'application.components.*',
		'application.helpers.*', // helper methods
		'ext.mail.Message',
		'application.lib.*',
	),
)

を導入すると、次のメソッドを使用して
Yii:: app()->basePath


3、コントローラーで
//引入PHPExcel相关文件
require_once 'PHPExcel.php';
require_once 'PHPExcel/IOFactory.php';
require_once 'PHPExcel/Writer/Excel2007.php';
require_once 'PHPExcel/Writer/Excel5.php';


を使用します。 3. Yii のプラグインを参照します
注: プラグインと拡張機能は異なります
1. ソース コードは project/ckeditor/*
2. コードの作成と更新で参照されます
<?php
include_once "/ckeditor/ckeditor.php";
// Create a class instance.
$CKEditor = new CKEditor();

// Path to the CKEditor directory.
$CKEditor->basePath = Yii::app()->baseUrl.'/ckeditor/';

// Replace a textarea element with an id (or name) of "textarea_id".
$CKEditor->replace("News_content");
?>


プラグイン方法 2 の紹介:
まず、たとえば Zend フレームワークを使用したいとします。 Zend フレームワークを prtected/vendors に解凍します。現在のフォルダーは protected/vendors/Zend/Search/Lucene.php

次に、コントローラー ファイルの先頭に次のコードを挿入します。
Yii::import('application.vendors.*');
require Once('Zend/Search/Lucene.php');
上記のコードには Lucene.php クラス ファイルが含まれています。相対パスを使用しているため、Yii::import は require_once より前にある必要があります。

第三に、一度セットアップすると、コントローラーで使用できるようになります。たとえば、
$lucene=new Zend Search Lucene($pathOfIndex);
$hits=$lucene->find(strto lower($keyword));



4. 他のファイルをページに導入します
たとえば、 ../components/RMSClient.php を ../controllers/OutsourceController.php で直接使用したい場合は、次を使用できます。メソッド
require_once(dirname(__FILE__)."/../components/RMSClient.php");

//注意以下方式引入,提升找不到
require_once(Yii::app()->baseUrl . "/protected/components/RMSClient.php");

//原因:include、require包含的是服务器上的文件路劲,和url没有直接关系。
//如果想用yii::app()方式,可以使用../config/main.php中的Yii::app()->basePath.


声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。