在另一個Yii2應用程序中,我使用一個名爲navatech/yii2-roxymce
的包來替換textarea
HTMl可編輯框。在當前的應用程序中,我不想使用它,而我想讓所有的東西都易於重用。換句話說,我想要一個條件檢查說,如果安裝包已經安裝調用它,如果沒有調用普通的活動表單textarea。Yii2檢查包是否被定義
我試圖class_exists
類似如下:
<?php
// _form.php code
use yii\helpers\Html;
use yii\widgets\ActiveForm;
use yii\helpers\Url;
use navatech\roxymce\widgets\RoxyMceWidget;
......
<?php if (class_exists('RoxyMceWidget')): ?>
<?= RoxyMceWidget::widget([
'model' => $model, //your Model, REQUIRED
'attribute' => 'content', //attribute name of your model, REQUIRED if using 'model' section
'name' => 'Post[content]', //default name of textarea which will be auto generated, NOT REQUIRED if using 'model' section
'value' => isset($_POST['Post']['content']) ? $_POST['Post']['content'] : $model->content, //default value of current textarea, NOT REQUIRED
'action' => Url::to(['roxymce/default']), //default roxymce action route, NOT REQUIRED
'options' => [//TinyMce options, NOT REQUIRED, see https://www.tinymce.com/docs/
'title' => 'RoxyMCE',//title of roxymce dialog, NOT REQUIRED
'height' => 450,
],
]);?>
<?php else: ?>
<?= $form->field($model, 'content')->textarea(['rows' => 14]);?>
<?php endif; ?>
.....
然而,navatech\roxymce\widgets\RoxyMceWidget
使用作曲家安裝後,條件語句給出了相同的結果。即打印普通活動形式文本區域,所以class_exists
似乎總是返回false,儘管小部件正在安裝。
有沒有其他正確的方法來檢查包是否被找到?
但它已經在'use'聲明定義的電流? – SaidbakR
'class_exists'不知道。 – Bizley