namespace app\controllers;
use app\models\Func;
use app\models\Worker;
use Yii;
use app\models\WorkerObject;
use app\models\WorkerFunction;
class AlgorithmAmicumController extends \yii\web\Controller
{
var $worker_id = 530;
public function actionIndex()
{
// $this->runFileScript($this->buildScriptArray($this->worker_id));
$this->returnCache();
$cache = Yii::$app->cache; //иницализируем cache
$dataProvider = json_decode($cache->get('scripts')); //забираем данные из cache
return $this->render('index', [
'dataProvider' => $dataProvider,
]);
}
/*функция для извлечения scripts из таблицы Func*/
public function buildScriptArray($workerId){
$workerObjects = WorkerObject::findAll(['worker_id' => $workerId]);
$scripts = array();
foreach($workerObjects as $workerObject){
$scripts[$workerObject->id]['worker_object_id'] = $workerObject->id;
foreach ($workerObject->workerFunctions as $workerFunction) {
$scripts[$workerObject->id]['worker_object_id'][$workerFunction->id]['worker_function_id'] = $workerFunction->id;
foreach ($workerFunction->function as $function) {
$scripts[$workerObject->id]['worker_object_id'][$workerFunction->id]['worker_function_id'][$function->id]['function_id'] = $function->id;
}
}
}
return $scripts;
}
public function returnCache()
{
$cache = Yii::$app->cache; //инициализируем cache
$forCache = $this->buildScriptArray($this->worker_id); //сливаем все в переменную
$cache->set('scripts', json_encode($forCache)); //отдаем все в cache
}
выдает ошибку Cannot use a scalar value as an array
в php storm почему то во фрагменте foreach ($workerObject->workerFunctions as $workerFunction) workerFunctions не опредляет как часть переменной и выделяет другим цветом и use app\models\WorkerFunction; показана как не используемая.
в моделях вот такие связи
public function getWorkerObject()
{
return $this->hasOne(WorkerObject::className(), ['id' => 'worker_object_id']);
}
public function getWorkerFunctions()
{
return $this->hasMany(WorkerFunction::className(), ['worker_object_id' => 'id']);
}
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Требуется, по строке, в которой задан стиль(цвет, стиль линии и заливки и тд
Мне нужно что бы после лимита значений(то есть ,когда больше 4х li),заново выводился ul, уже со следующими значениями liСделал как-то так ,но естественно...
Всем доброго времени суток, не имел опыта работы с данных итераторомПытаюсь разобраться