11. Whoops\Exception\ErrorException
…/­!define/­sites/­designer/­packages/­tags/­controllers/­ClientController.php21
10. Whoops\Run handleError
<#unknown>0
9. sizeof
…/­!define/­sites/­designer/­packages/­tags/­controllers/­ClientController.php21
8. Tags_ClientController callGetBrowserTags
…/­!define/­system/­core/­call.php32
7. call
…/­!define/­sites/­designer/­packages/­browsers/­widgets/­ListWidget.php7
6. Browsers_ListWidget render
…/­!define/­system/­core/­widget.php9
5. Widget
…/­!define/­sites/­designer/­packages/­main/­views/­catalog.tpl.php16
4. include
…/­!define/­system/­core/­view.php18
3. View make
…/­!define/­sites/­designer/­packages/­main/­controllers/­WelcomeController.php44
2. Main_WelcomeController getCatalog
…/­!define/­system/­core/­routing.php48
1. routing
…/­!define/­!define.php89
0. include
…/­index.php5

Whoops \ Exception \ ErrorException (E_WARNING)

Callstack information; navigate with mouse or keyboard using Ctrl+↑ or Ctrl+↓
Copy-to-clipboard button
Exception message and its type
Code snippet where the error was thrown
Server state information
Application provided context information
Whoops\Exception\ErrorException thrown with message "sizeof(): Parameter must be an array or an object that implements Countable" Stacktrace: #11 Whoops\Exception\ErrorException in /www/brouzeka/www/brouzeka/!define/sites/designer/packages/tags/controllers/ClientController.php:21 #10 Whoops\Run:handleError in <#unknown>:0 #9 sizeof in /www/brouzeka/www/brouzeka/!define/sites/designer/packages/tags/controllers/ClientController.php:21 #8 Tags_ClientController:callGetBrowserTags in /www/brouzeka/www/brouzeka/!define/system/core/call.php:32 #7 call in /www/brouzeka/www/brouzeka/!define/sites/designer/packages/browsers/widgets/ListWidget.php:7 #6 Browsers_ListWidget:render in /www/brouzeka/www/brouzeka/!define/system/core/widget.php:9 #5 Widget in /www/brouzeka/www/brouzeka/!define/sites/designer/packages/main/views/catalog.tpl.php:16 #4 include in /www/brouzeka/www/brouzeka/!define/system/core/view.php:18 #3 View:make in /www/brouzeka/www/brouzeka/!define/sites/designer/packages/main/controllers/WelcomeController.php:44 #2 Main_WelcomeController:getCatalog in /www/brouzeka/www/brouzeka/!define/system/core/routing.php:48 #1 routing in /www/brouzeka/www/brouzeka/!define/!define.php:89 #0 include in /www/brouzeka/www/brouzeka/index.php:5

sizeof(): Parameter must be an array or an object that implements Countable

/www/brouzeka/www/brouzeka/!define/sites/designer/packages/tags/controllers/ClientController.php
        $browser_tags = [];
        if (sizeof($browsers) > 0) {
            $ids = array();
            foreach ($browsers as $item) {
                $ids[] = $item['id'];
            }
            $tags_links = get_rows("select tags.*,tags_links.browser_id from tags_links inner join tags on tags.id = tags_links.tag_id where tags_links.browser_id in (^ids)", ['^ids' => implode(',', $ids)]);
            if (sizeof($tags_links) > 0) {
                foreach ($tags_links as $tag) {
                    $browser_tags[$tag['browser_id']][] = $tag;
<#unknown>
/www/brouzeka/www/brouzeka/!define/sites/designer/packages/tags/controllers/ClientController.php
        $browser_tags = [];
        if (sizeof($browsers) > 0) {
            $ids = array();
            foreach ($browsers as $item) {
                $ids[] = $item['id'];
            }
            $tags_links = get_rows("select tags.*,tags_links.browser_id from tags_links inner join tags on tags.id = tags_links.tag_id where tags_links.browser_id in (^ids)", ['^ids' => implode(',', $ids)]);
            if (sizeof($tags_links) > 0) {
                foreach ($tags_links as $tag) {
                    $browser_tags[$tag['browser_id']][] = $tag;
/www/brouzeka/www/brouzeka/!define/system/core/call.php
        }
        if ($currentPermissions && !Auth::havePerms($currentPermissions)) {
            //if (!Url::current()['xhr']) session_set('app.routing.redirect', $d['url']);
            $perm_err = ['userPermissions' => Auth::getPermissions(), 'needPermissions' => $currentPermissions];
            Event::fire(Event::AppErrorPermissions, $perm_err);
            return;
        }*/
        return call_user_func_array(array($controller_object, $action), $args);
    }
    die($package . " - NOT FOUND");
/www/brouzeka/www/brouzeka/!define/sites/designer/packages/browsers/widgets/ListWidget.php
<?php
class Browsers_ListWidget
{
    function render($list)
    {
        $data['data'] = $list;
        $data['browser_tags'] = call('tags.client.getBrowserTags', $data['data']['items']);
        $data['favs'] = call('browsers.client.favs');
        return View::make('list', $data);
    }
/www/brouzeka/www/brouzeka/!define/system/core/widget.php
function Widget($path, $args = array())
{
    list($package, $widget0) = explode('.', $path);
    $widget = ucfirst($widget0) . 'Widget';
    $class = ucfirst($package) . '_' . $widget;
    $inc_path = get_site_packages_path() . $package . '/widgets/' . $widget . '.php';
    include_once $inc_path;
    return call_user_func_array(array(new $class, 'render'), $args);
}
 
/www/brouzeka/www/brouzeka/!define/sites/designer/packages/main/views/catalog.tpl.php
        <?php if (sizeof($data['items']) > 0): ?>
            <div class="order-links">
                <?php echo implode('', $order_links)?>
            </div>
        <?php endif ?>
 
 
        <?php echo Widget('browsers.list', [$data]) ?>
    </div>
</div>
/www/brouzeka/www/brouzeka/!define/system/core/view.php
        $__current = dirname($__bt['file']) . '/views/' . $__name;
        $__current2 = dirname(dirname($__bt['file'])) . '/views/' . $__name;
        $__current3 = dirname($__bt['file']) . '/' . $__name;
        $__site = _SITE_VIEWS_ . $__name;
        if (file_exists($__current)) {
            include $__current;
        } elseif (file_exists($__current2)) {
            include $__current2;
        } elseif (file_exists($__current)) {
            include $__current3;
/www/brouzeka/www/brouzeka/!define/sites/designer/packages/main/controllers/WelcomeController.php
    {
        $id = intval($_REQUEST['catalog_id']);
        $cat = get_item($id, 'catalog');
        if (!$cat) return View::make('errors.404');
        $order = get_sql_order(static::$browser_orders);
        $sql = prepare_sql('select * from browsers where catalog_id=:id and deleted<>1 ^order', [':id' => $id, '^order' => $order['sql']]);
        $data = show_pagination($sql, Url::clean('page') . '&', 12);
        return View::make('catalog', ['data' => $data, 'cat' => $cat, 'order_links' => $order['links']]);
    }
 
/www/brouzeka/www/brouzeka/!define/system/core/routing.php
            $checkCSRF = isset($controller_object::${$DD['action'] . 'CSRF'}) ? $controller_object::${$DD['action'] . 'CSRF'} : Config::get('csrf.enable');
            if (in_array($DD['type'], ['post', 'xhrPost']) && $checkCSRF && CSRF::invalid()) {
                header('HTTP/1.0 403 Forbidden');
                $csrf_args = ['url' => $DD, 'html' => &$html];
                Event::fire(Event::AppCSRF, $csrf_args);
            } else {
			//echo $controller_object->{$DD['action']}(); die();
			$html = $controller_object->{$DD['action']}();
            }
            //END
/www/brouzeka/www/brouzeka/!define/!define.php
 
Lang::setLocale(Config::get('app.language.default'));
 
Event::fire(Event::AppInit);
 
CSRF::init(Config::get('csrf.namespace'));
 
routing();
 
Event::fire(Event::AppFinish);
/www/brouzeka/www/brouzeka/index.php
<?php
define('SITE_NAME', 'designer');
define('INDEX_PATH', str_replace('\\', '/', __DIR__));
define('ASSETS_PATH', INDEX_PATH . '/assets/');
include '!define/!define.php';
Key Value
r main.welcome.catalog
catalog_id 20
empty
empty
empty
Key Value
__csrf 1218-1965-C166-4342-E7B6-9672-2B54-C2FD-CF6E-ACA1
Key Value
USER nginx
HOME /var/lib/nginx
HTTP_HOST brouzeka.ru
HTTP_USER_AGENT claudebot
HTTP_ACCEPT */*
SCRIPT_FILENAME /www/brouzeka/www/brouzeka//index.php
REDIRECT_STATUS 200
HTTP_X_REAL_IP 34.204.52.16
SERVER_NAME brouzeka.ru
SERVER_PORT 80
SERVER_ADDR 148.251.183.124
REMOTE_PORT 38530
REMOTE_ADDR 34.204.52.16
SERVER_SOFTWARE nginx/1.12.2
GATEWAY_INTERFACE CGI/1.1
SERVER_PROTOCOL HTTP/1.1
DOCUMENT_ROOT /www/brouzeka/www/brouzeka/
DOCUMENT_URI /index.php
REQUEST_URI /?r=main.welcome.catalog&catalog_id=20
SCRIPT_NAME /index.php
CONTENT_LENGTH
CONTENT_TYPE
REQUEST_METHOD GET
QUERY_STRING r=main.welcome.catalog&catalog_id=20
FCGI_ROLE RESPONDER
PHP_SELF /index.php
REQUEST_TIME_FLOAT 1711619771.5588
REQUEST_TIME 1711619771
empty
0. Whoops\Handler\JsonResponseHandler
1. Whoops\Handler\PrettyPageHandler