четверг, 19 марта 2015 г.

Yii2 composer Your requirements could not be resolved to an installable set of packages


Если вы получили такую ошибку при обновлении или установке пакетов:

Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - yiisoft/yii2 2.0.3 requires bower-asset/jquery 2.1.*@stable | 1.11.*@stable -> no matching package found.
    - yiisoft/yii2 2.0.2 requires bower-asset/jquery 2.1.*@stable | 1.11.*@stable -> no matching package found.
    - yiisoft/yii2 2.0.1 requires bower-asset/jquery 2.1.*@stable | 1.11.*@stable -> no matching package found.
    - yiisoft/yii2 2.0.0 requires bower-asset/jquery 2.1.*@stable | 1.11.*@stable -> no matching package found.
    - Installation request for yiisoft/yii2 * -> satisfiable by yiisoft/yii2[2.0.0, 2.0.1, 2.0.2, 2.0.3]. 


Попробуйте установить composer-asset-plugin
php composer.phar global require "fxp/composer-asset-plugin:1.0.0"

четверг, 27 ноября 2014 г.

Phalcon multiple insert

Если вы наткнулись на эту страницу, значит у вас возникли проблемы с мулти записью, попробуйте такой вариант.

Some Controller:
$result = $this->db->execute("INSERT INTO visitors_applications (os,visitor_id,app_id,app_title) VALUES $values");

понедельник, 6 октября 2014 г.

суббота, 28 декабря 2013 г.

Глобальные функции в Yii

При работе с фреймворком YII, зачаcтую рано или поздно человек встречается с проблемой написания очень длинных цепочек кода для получения системных переменных.
Например Yii::app()->request->baseUrl;
Ниже приведен файл (globals.php) подключив который в входном скрипте вы сможете использовать часто используемые парамметры и действия в короткой записи.
require('path/to/globals.php');
require('path/to/yii.php');
......
/**
 * This is the shortcut to DIRECTORY_SEPARATOR
 */
defined('DS') or define('DS',DIRECTORY_SEPARATOR);
 
/**
 * This is the shortcut to Yii::app()
 */
function app()
{
    return Yii::app();
}
 
/**
 * This is the shortcut to Yii::app()->clientScript
 */
function cs()
{
    // You could also call the client script instance via Yii::app()->clientScript
    // But this is faster
    return Yii::app()->getClientScript();
}
 
/**
 * This is the shortcut to Yii::app()->user.
 */
function user() 
{
    return Yii::app()->getUser();
}
 
/**
 * This is the shortcut to Yii::app()->createUrl()
 */
function url($route,$params=array(),$ampersand='&')
{
    return Yii::app()->createUrl($route,$params,$ampersand);
}
 
/**
 * This is the shortcut to CHtml::encode
 */
function h($text)
{
    return htmlspecialchars($text,ENT_QUOTES,Yii::app()->charset);
}
 
/**
 * This is the shortcut to CHtml::link()
 */
function l($text, $url = '#', $htmlOptions = array()) 
{
    return CHtml::link($text, $url, $htmlOptions);
}
 
/**
 * This is the shortcut to Yii::t() with default category = 'stay'
 */
function t($message, $category = 'stay', $params = array(), $source = null, $language = null) 
{
    return Yii::t($category, $message, $params, $source, $language);
}
 
/**
 * This is the shortcut to Yii::app()->request->baseUrl
 * If the parameter is given, it will be returned and prefixed with the app baseUrl.
 */
function bu($url=null) 
{
    static $baseUrl;
    if ($baseUrl===null)
        $baseUrl=Yii::app()->getRequest()->getBaseUrl();
    return $url===null ? $baseUrl : $baseUrl.'/'.ltrim($url,'/');
}
 
/**
 * Returns the named application parameter.
 * This is the shortcut to Yii::app()->params[$name].
 */
function param($name) 
{
    return Yii::app()->params[$name];
}

четверг, 12 декабря 2013 г.

json_encode() не работает в PHP 5.5

Это очень не ожиданно, но факт. Теперь в ваших старых скриптах вы встретите ошибку подобную этой:

Fatal error: Call to undefined function json_encode()


К счастью решение данной проблемы есть, теперь эти функции поставляются вместе с раширением php5-json
Что бы наши старые скрипты заработали нам необходимо прописать в терминале следущее:

sudo apt-get install php5-json
sudo /etc/init.d/apache2 restart


суббота, 28 сентября 2013 г.

Apache open_basedir warning

На днях при переносе YII приложения на другой сервер, возникли предупреждения такого вида:
Warning: require_once() [function.require-once]: open_basedir restriction in effect.
Для решения данной проблемы необходимо в файле Апача secure.conf закоментировать все строки правил связанные с open_basedir