В Nokia N8 и других Symbian^3 смартфонах, уже есть такой приемник, но он пока, заблокирован в прошивке.
LEOnidUKG, а у меня такого и нету.. У меня функция логирования ошибок.
Ладно. Вы уж точно учите PHP, а может уже выучили, чем я ;). Посмотрим :).
А почему функции это зло?
Ну напишите лучше, а я поучусь. ;)
А потом чесать голову и думать, что же это условие значит? Вот приставьте, если бы в CMS WordPress вместо шаблона, модулей, сразу все цитировалось через if-else в index.php ..
ortegas добавил 26.05.2011 в 22:10
..к тому же функция может изменять свои значения.. На одной странице вызываем с 1 атрибутов, на второй с другим. И код чистый и голова не болит.. И если отключил функцию в конфе, не надо потом if else эти менять в каждом файле, а сразу отключится во всех файлах, кои используют функцию.
cryptex, Вы мой пост читали или посты набиваете? ТС сделал заказ у меня, но пропал.
Процитировать содержимое файла index.php в single.php - самый простой способ.
Если хотите более безопасный способ, процитируйте содержимое обеих файлов и style.css в придачу.
А как же гибкость? Если код не выполняется зачем он в странице? Пускай лучше будет в файле функций и в файле классов. Я могу ошибаться, но лучше пользоваться парой Major системных файлов и выводить ошибку при их ошибке, либо разбросать системный код по всех файлах и потом собирать ошибки по коду страницы.
ortegas добавил 26.05.2011 в 22:01
Вы наверное CMS IP.Board не видели.. Вот там перебор.. Одна папка Kernel чего стоит).
global $conf; /*Определяем браузер по UserAgent*/ if ((substr_count($_SERVER['HTTP_USER_AGENT'], 'MSIE')) and (substr_count($_SERVER['HTTP_USER_AGENT'], '6.0')) and (!substr_count($_SERVER['HTTP_USER_AGENT'], 'chromeframe'))) {$browser = 'MSIE6';} elseif ((substr_count($_SERVER['HTTP_USER_AGENT'], 'MSIE')) and (substr_count($_SERVER['HTTP_USER_AGENT'], '7.0')) and (!substr_count($_SERVER['HTTP_USER_AGENT'], 'chromeframe'))) {$browser = 'MSIE7';} elseif ((substr_count($_SERVER['HTTP_USER_AGENT'], 'MSIE')) and (substr_count($_SERVER['HTTP_USER_AGENT'], '8.0')) and (!substr_count($_SERVER['HTTP_USER_AGENT'], 'chromeframe'))) {$browser = 'MSIE8';} elseif ((substr_count($_SERVER['HTTP_USER_AGENT'], 'MSIE')) and (substr_count($_SERVER['HTTP_USER_AGENT'], '9.0')) and (!substr_count($_SERVER['HTTP_USER_AGENT'], 'chromeframe'))) {$browser = 'MSIE9';} elseif ((substr_count($_SERVER['HTTP_USER_AGENT'], 'MSIE')) and (substr_count($_SERVER['HTTP_USER_AGENT'], '10.0')) and (!substr_count($_SERVER['HTTP_USER_AGENT'], 'chromeframe'))) {$browser = 'MSIE10';} elseif ((substr_count($_SERVER['HTTP_USER_AGENT'], 'Chrome')) and (substr_count($_SERVER['HTTP_USER_AGENT'], 'AppleWebKit')) and (substr_count($_SERVER['HTTP_USER_AGENT'], 'Gecko')) and (!substr_count($_SERVER['HTTP_USER_AGENT'], 'chromeframe'))) {$browser = 'Chrome';} elseif ((substr_count($_SERVER['HTTP_USER_AGENT'], 'Opera')) and (!substr_count($_SERVER['HTTP_USER_AGENT'], 'Symbian')) and (!substr_count($_SERVER['HTTP_USER_AGENT'], 'J2ME')) and (!substr_count($_SERVER['HTTP_USER_AGENT'], 'HTC')) and (!substr_count($_SERVER['HTTP_USER_AGENT'], 'MOT')) and (!substr_count($_SERVER['HTTP_USER_AGENT'], 'SAMSUNG'))) {$browser = 'Opera';} elseif ((substr_count($_SERVER['HTTP_USER_AGENT'], 'Firefox')) and (!substr_count($_SERVER['HTTP_USER_AGENT'], 'Opera')) and (!substr_count($_SERVER['HTTP_USER_AGENT'], 'HTC'))) {$browser = 'Firefox';} elseif ((substr_count($_SERVER['HTTP_USER_AGENT'], 'Safari')) and (!substr_count($_SERVER['HTTP_USER_AGENT'], 'Chrome')) and (!substr_count($_SERVER['HTTP_USER_AGENT'], 'iPhone')) and (!substr_count($_SERVER['HTTP_USER_AGENT'], 'Mobile')) and (!substr_count($_SERVER['HTTP_USER_AGENT'], 'Nokia'))) {$browser = 'Safari';} else {$browser = 'Unknown';} /*Записываем ошибки в лог файл*/ function errors_logging($error = 0) { global $conf; $IP = $_SERVER['REMOTE_ADDR']; $port = $_SERVER['REMOTE_PORT']; $request_method = $_SERVER['REQUEST_METHOD']; $request_url = 'http://'; $request_url .= $_SERVER['HTTP_HOST']; $request_url .= $_SERVER['REQUEST_URI']; $user_agent = $_SERVER['HTTP_USER_AGENT']; if ($_SERVER['HTTP_COOKIE']) { $cookie = "\n"; $cookie .= $_SERVER['HTTP_COOKIE']; } $date_format = date("dmY"); $time_format = date("H:i:s"); $error = str_replace("<br>", ". ", $error); $error = "[$time_format $error\n$IP:$port $request_method $request_url\n$user_agent$cookie] \n\n"; if (!@opendir("$conf[logs_dir]/errors")) { mkdir("$conf[logs_dir]/errors"); } $file = "$conf[logs_dir]/errors/$date_format.log"; $fopen_id = fopen($file, a); fputs($fopen_id, "$error"); fclose($fopen_id); } /*Устанавливаем кодировку для HTML документов*/ function charset() { global $conf; if (!$conf[charset]) {$charset = 'utf-8';} else {$charset = $conf[charset];} echo '<meta charset="'; echo "$charset"; echo '">'; echo "\n"; } /*Устанавливаем скрипт поддержки HTML5 для браузеров, которые его не поддерживают*/ function html5_ie_support() { global $conf; global $browser; if (($browser == MSIE6) xor ($browser == MSIE7) xor ($browser == MSIE8)) { if (is_file("$conf[jscripts_dir]/html5.js")) { echo '<script src="'; echo "$conf[jscripts_dir]/html5.js"; echo '"></script>'; echo "\n"; } else {global $lang; $GLOBALS[error] = $lang[error_can_include_js]; include "$conf[kernel_dir]/error.php"; exit();} } } /*Устанавливаем файл стилей в зависимости от правил*/ function stylesheet_file($custom_stylesheet_file = 0) { global $conf; global $browser; if (!$custom_stylesheet_file) { if (($browser == MSIE6) xor ($browser == MSIE7) xor ($browser == MSIE8) xor ($browser == Unknown)) {$stylesheet_file = $conf[stylesheet_without_css3];} else {$stylesheet_file = $conf[stylesheet_with_css3];} } else {$stylesheet_file = $custom_stylesheet_file;} if (is_file("$conf[stylesheet_dir]/$stylesheet_file")) { echo '<link rel="stylesheet" href="'; echo "$conf[stylesheet_dir]/"; echo "$stylesheet_file"; echo '">'; echo "\n"; } } /*Подгружаем файлы шаблона*/ function template($file, $before_file = false, $after_file = false) { if ($before_file) echo "<$before_file>\n"; global $conf; $file = "$conf[templates_dir]/$conf[current_template]/$file.php"; if (is_file("$file")) { @include("$file"); echo "\n"; } if ($after_file) echo "</$after_file>\n"; } /*Устанавливаем Favicon*/ function favicon() { global $conf; if (($conf[favicon]) and (is_file($conf[favicon]))) {echo '<link rel="shortcut icon" href="'; echo "$conf[favicon]"; echo'">'; echo "\n";}; } /*Переадрисовываем на корректную страницу при ошибках*/ function redirect_if_error($enabled = 0) { global $conf; if (($conf[error_redirect_interval]) and ($enabled)) {echo '<meta http-equiv="refresh" content="'; echo "$conf[error_redirect_interval]"; echo '; url='; echo "$conf[host]"; echo "$conf[index_url]"; echo '">'; echo "\n";}; }
Вот пример функций.
ortegas добавил 26.05.2011 в 21:48
Просто я хочу гибкости и простоты в то же время.
LEOnidUKG, а как? Классы я пока, что не учил. Хочу закрепить урок.
Чтобы код не засорять и выполнять в зависимости от условий.
Я пока, что профан. Кто уже имеет опыт, поделитесь. А то когда пишешь скрипт уча PHP запоминается лучше. Боюсь, чтобы потом все не переписывать :).