$scripts_array = array(
'page_all' => '<script type="text/javascript" src="/system/skins/js/onready.js"></script>',
'page_all' => '<script type="text/javascript" src="/system/skins/js/poll.js"></script>',
'news' => '<link rel="stylesheet" type="text/css" href="/system/library/bbcode/styles/style.css" />
<link rel="stylesheet" type="text/css" href="/system/library/bbcode/styles/modalbox.css" />
<script type="text/javascript" src="/system/library/bbcode/js/modalbox.js"></script>
<script type="text/javascript" src="/system/library/bbcode/js/bb.js"></script>
<script type="text/javascript" src="/system/skins/js/comment.js"></script>',
'user_area' => '<script type="text/javascript" src="/system/skins/js/member_area.js"></script>',
);
И функция:
function scripts ($page_name)
{
global $scripts_array;
$scripts_complate = '';
if(!isset($page_name))
{
foreach($scripts_array as $k=>$v)
{
if($k == 'page_all')
{
$scripts_complate .=
$v;
}
}
}
else
{
foreach($scripts_array as $k=>$v)
{
if($k == 'page_all' or $k == $page_name)
{
$scripts_complate .=
$v;
}
}
}
return $scripts_complate;
}
Например я вызываю скрипт:
echo scripts($page_name=false);
И мне по идее должно подключить 2 JS файла 1 и 2. Но мне подключает только 2 почему???
Спустя 4 минуты, 36 секунд (17.08.2012 - 10:17) Игорь_Vasinsky написал(а):
1. можно сразу указать значение по умолчанию
и вызывать
2. Наверн не конкатенацию нужно юзать, а в массив писать
function scripts ($page_name=null ...
и вызывать
scripts();
2. Наверн не конкатенацию нужно юзать, а в массив писать
Цитата |
$scripts_complate .= $v; |
$scripts_complate[] = $v;
и функция вернёт массив
Спустя 11 минут, 55 секунд (17.08.2012 - 10:29) Shkiper написал(а):
мне нужно чтоб он вернул не массив а значение массива. тоесть надо чтоб он вывел
<script type="text/javascript" src="/system/skins/js/onready.js"></script>
<script type="text/javascript" src="/system/skins/js/poll.js"></script>
Спустя 37 минут, 33 секунды (17.08.2012 - 11:07) l@pteff написал(а):
Shkiper
в массиве не должно быть одинаковых ключей\индексов
в массиве не должно быть одинаковых ключей\индексов
Спустя 57 минут, 54 секунды (17.08.2012 - 12:05) dron4ik написал(а):
'page_all' => '<script type="text/javascript" src="/system/skins/js/onready.js"></script>',
'page_all' => '<script type="text/javascript" src="/system/skins/js/poll.js"></script>',
page_all заменяет page_all...
разные ключи дай... page_all_1 и page_all_2 к примеру)
'page_all' => '<script type="text/javascript" src="/system/skins/js/poll.js"></script>',
page_all заменяет page_all...
разные ключи дай... page_all_1 и page_all_2 к примеру)
Спустя 1 час, 49 минут, 40 секунд (17.08.2012 - 13:54) Shkiper написал(а):
как я про это забыл
Спустя 1 час, 7 минут, 10 секунд (17.08.2012 - 15:02) Winston написал(а):
Или же в page_all вложи еще один массив
Спустя 2 часа, 27 минут, 4 секунды (17.08.2012 - 17:29) Krevedko написал(а):
Мрак какой-то. Зачем в массив полные пути писать. Для примера реализация во фреймворке. Пишем в массив стили и ява-скрипты
Потом в шаблоне вывод
Получаем
$this->template->styles = array('main', 'jquery.fancybox');
$this->template->scripts = array('jquery-1.3.2.min', 'jquery.easing.1.3', 'jquery.fancybox-1.2.1.pack');
Потом в шаблоне вывод
<?php
foreach($styles as $style):
echo HTML::style('media/css/'. $style . '.css');
endforeach;
foreach($scripts as $script):
echo HTML::script('media/js/'. $script . '.js');
endforeach;
?>
Получаем
<link type="text/css" href="/media/css/main.css" rel="stylesheet" /><link type="text/css" href="/media/css/jquery.fancybox.css" rel="stylesheet" />
<script type="text/javascript" src="/media/js/jquery-1.3.2.min.js"></script><script type="text/javascript" src="/media/js/jquery.easing.1.3.js"></script><script type="text/javascript" src="/media/js/jquery.fancybox-1.2.1.pack.js"></script>
Спустя 16 часов, 59 минут, 15 секунд (18.08.2012 - 10:28) Shkiper написал(а):
Krevedko ну это фреймворки
Спустя 45 минут, 51 секунда (18.08.2012 - 11:14) pak написал(а):
Shkiper
А в чем проблема создать функцию на подобие?
А в чем проблема создать функцию на подобие?
Спустя 46 минут, 8 секунд (18.08.2012 - 12:00) Shkiper написал(а):
меня мой вариант больше устраивает.
Спустя 1 час, 7 минут, 8 секунд (18.08.2012 - 13:07) Krevedko написал(а):
Цитата (pak @ 18.08.2012 - 09:14) |
Shkiper А в чем проблема создать функцию на подобие? |
Я про это и намекнул. Сделать функцию со свич-кейсом тем же, в которую передавать путь к файлу и его тип (цсс, ява-скрипт итд). И генерить уже код.
А не эти простыни писать.
Спустя 6 часов, 42 минуты, 50 секунд (18.08.2012 - 19:50) Shkiper написал(а):
Krevedko )))