[РЕШЕНО]Ребята, помогите отладить два куска кода

Главные вкладки

Аватар пользователя Boozenok Boozenok 12 октября 2015 в 21:44

Ребят, помогите привести код к стандарту, получаю ошибку (Strict warning: Only variables should be passed by reference) в двух кусках кода:

                case 'user_login':
                        $form['#prefix'] = '<div class="login_form"><div class="head_title">'.t('Login:').'</div>';
                        $form['#suffix'] = '</div><div class="register_form"><div class="head_title">'.t('Registration:').'</div>'.drupal_render(drupal_get_form('user_register_form')).'</div>';
                        $links = _ajax_register_ajax_links(array('password'));
                        $form['submit']['#prefix'] = $links[0];
                        $form['actions']['submit']['#value'] = t('Sign in');
                break;

и вот здесь еще

        if(count(end($items)) < 6 && count(end($items)) != 0){
                $photo_end = str_replace('<span>', '<span class="end">', end(end($items)));
                $photo_end = str_replace('<img', '<img class="end_img"', $photo_end);
                $photos .= '<div class="row">';
                        $photos .= '<div class="row_content">'.l($photo_end, 'collection', array('query' => array('tid' => $result->tid), 'html' => TRUE)).'</div>';
                $photos .= '</div>';
        }

Комментарии

Аватар пользователя graker graker 12 октября 2015 в 22:12

Вы зайдите в описание end(), там прямо написано:
Массив. Этот массив передается по ссылке, потому что он модифицируется данной функцией. Это означает что вы должны передать его как реальную переменную, а не как функцию, возвращающую массив, так как по ссылке можно передавать только реальные переменные.
Это ко второму случаю.
А в первом случае такая же проблема у drupal_render().