Как открыть php файл в браузере. Ловим попутный ветер или как запустить скрипт PHP Как можно узнать что-либо о браузере клиента

В разделе на вопрос Как открыть файл с расширением.php? заданный автором шеврон лучший ответ это чувак Roma2000 прогнал! Хотя если зделать как он сказал то все будет работать!
есть способ попроще! например что ты понмаешь под словом открыть? PHP ето интернет страничка.
в любом браузере в меню файл есть такой пункт открыть вот через него.
если тебе надо просмотреть внутреннею начинку то через любой текстовый редактор, например блокнот, там тоже открыть, можно вордом, но там как я непомню, тоже вроде открыть но не как www страничку а как текст.

Ответ от роспуски [гуру]
В любом браузере.


Ответ от Осоловеть [новичек]
Mozilla Firefox!


Ответ от POSTAL [новичек]
Можно ещё проще - использовать Денвер=)! Для правки кода.пхп предложил бы "Дримвивер" - лучше чем блокнот, хоумсайт и тд
ЗЫ: Papa Karlo правильно предложил.. и Roma2000 тоже. Но тебе нужно было сказать нам, для правки (изменений в коде файла) ты хочешь этот файл открыть ИЛИ визуально взглянуть "что будет", нажав на файл с расширением.пхп, так вот, всего ты не увидишь - т.к. что бы увидить что может этот.пхп-файл можно только запустив файл на сервере с "апачи" .

Отладка PHP кода выполняется самыми разными способами. Можно выводить информацию на экран, с помощью die или var_dump , с помощью файлов журнала, в которые пишутся сообщения об ошибках и предупреждения. Плохо то, что почти все перечисленные методы вносят нарушения в шаблон страниц и сообщения достаточно трудно вычленять в потоке другой информации.

Почему бы не использовать один инструмент для всех скриптов (и PHP и Javascript)? Таким инструментом может стать консоль JavaScript, которую можно использовать и для отладки PHP кода. Консоль входит в набор разработчика, который присутствует практически во всех современных браузерах по умолчанию или доступен в виде удобного дополнения. Она предоставляет собой отличный инструмент для цветного вывода с номером строки и всем, что нужно. А кроме того, можно выводить значения массивов и целых объектов в консоль.

Конечно, есть браузеры, в которых консоль отсутствует (например, IE) и инструмент отладки может нарушить процесс выполнения приложения. Но мы позаботимся, чтобы все проходило отлично.

Вот класс, который выполняет всю работу:

Class PHPDebug { function __construct() { if (!defined("LOG")) define("LOG",1); if (!defined("INFO")) define("INFO",2); if (!defined("WARN")) define("WARN",3); if (!defined("ERROR")) define("ERROR",4); define("NL","\r\n"); echo "".NL; /// Данный код предназначен для браузеров без консоли echo "if (!window.console) console = {};"; echo "console.log = console.log || function(){};"; echo "console.warn = console.warn || function(){};"; echo "console.error = console.error || function(){};"; echo "console.info = console.info || function(){};"; echo "console.debug = console.debug || function(){};"; echo ""; /// Конец секции для браузеров без консоли } function debug($name, $var = null, $type = LOG) { echo "".NL; switch($type) { case LOG: echo "console.log("".$name."");".NL; break; case INFO: echo "console.info("".$name."");".NL; break; case WARN: echo "console.warn("".$name."");".NL; break; case ERROR: echo "console.error("".$name."");".NL; break; } if (!empty($var)) { if (is_object($var) || is_array($var)) { $object = json_encode($var); echo "var object".preg_replace("~[^A-Z|0-9]~i","_",$name)." = \"".str_replace(""","\"",$object)."\";".NL; echo "var val".preg_replace("~[^A-Z|0-9]~i","_",$name)." = eval("(" + object".preg_replace("~[^A-Z|0-9]~i","_",$name)." + ")");".NL; switch($type) { case LOG: echo "console.debug(val".preg_replace("~[^A-Z|0-9]~i","_",$name).");".NL; break; case INFO: echo "console.info(val".preg_replace("~[^A-Z|0-9]~i","_",$name).");".NL; break; case WARN: echo "console.warn(val".preg_replace("~[^A-Z|0-9]~i","_",$name).");".NL; break; case ERROR: echo "console.error(val".preg_replace("~[^A-Z|0-9]~i","_",$name).");".NL; break; } } else { switch($type) { case LOG: echo "console.debug("".str_replace(""","\\"",$var)."");".NL; break; case INFO: echo "console.info("".str_replace(""","\\"",$var)."");".NL; break; case WARN: echo "console.warn("".str_replace(""","\\"",$var)."");".NL; break; case ERROR: echo "console.error("".str_replace(""","\\"",$var)."");".NL; break; } } } echo "".NL; } }

Код достаточно простой и понятный. Основная идея заключается в генерировании JavaScript кода, который выводит значения переменных и сообщения в консоль. Очень просто и эффективно.

Код, который содержится в секции для браузеров без консоли, создает пустые функции-заглушки и браузер будет выполнять скрипт, несмотря на присутствующие вызовы записи сообщений в консоль.

Теперь посмотрим на пример использования. Ниже приведенный код используется в демонстрационной странице:

// Включаем код для отладки и определяем объект require_once("PHPDebug.php"); $debug = new PHPDebug(); // Простое сообщение на консоль $debug->debug("Очень простое сообщение на консоль"); // Вывод переменной на консоль $x = 3; $y = 5; $z = $x/$y; $debug->debug("Переменная Z: ", $z); // Предупреждение $debug->debug("Простое предупреждение", null, WARN); // Информация $debug->debug("Простое информационное сообщение", null, INFO); // Ошибка $debug->debug("Простое сообщение об ошибке", null, ERROR); // Выводим массив в консоль $fruits = array("банан", "яблоко", "клубника", "ананас"); $fruits = array_reverse($fruits); $debug->debug("Массив фруктов:", $fruits); // Выводим объект на консоль $book = new stdClass; $book->title = "Гарри Потный и кто-то из Ашхабада"; $book->author = "Д. K. Роулинг"; $book->publisher = "Arthur A. Levine Books"; $book->amazon_link = "http://www.amazon.com/dp/0439136369/"; $debug->debug("Объект: ", $book);

Чтобы увидеть действие кода, надо открыть консоль JavaScript в браузере и открыть/перегрузить демонстрационную страницу.

В браузерах без консоли в коде появятся элементы div с сообщениями, а код выполнится до конца без перерывов.

Данную статью я решил посветить всем начинающим изучать PHP , потому что у всех возникает одна и та же ошибка. Почему её допускают, не знаю, но допускают постоянно. Я без преувеличений скажу, что получил уже около сотни вопросов, на которые ответ будет дан в этой статье. Эта ошибка связана с неправильным запуском в PHP .

Как делают практически все новички:

  • Создают PHP-файл (иногда HTML-файл , но это самые новички).
  • Записывают туда PHP-код .
  • И двойным кликом пытаются открыть его в браузере.
  • Результат, браузер код открывает, но исполнять его не торопится. А просто выводит какие-то куски кода обычным текстом, либо вообще ничего не выводит.

    Ошибка данного подхода состоит в том, что ученик не понимает, что PHP - это серверный язык , а не клиентский. Это HTML или JavaScript клиентские языки, они, конечно, обрабатываются браузером. Но для PHP нужен интерпритатор . И вот данный интерпритатор запускается сервером.

    Вывод: запускать PHP-код надо через сервер . Если у Вас Denwer , значит, через него.

    Теперь, как запускать PHP-код через Denwer . Большинство новичков вновь делают ошибку. Они вроде бы всё делают правильно, создают нужные папки, перезапускают Denwer и вроде бы, осталось только правильно вызвать файл. Но тут снова ошибка: они вновь открывают файл просто в браузере (либо перетаскиванием файла в браузер, либо двойным кликом). Это легко можно заметить по адресу в адресной строке. Там будет что-то наподобие: file:///Z:\home\mysite.local\www\script.php .

    А правильно запускать надо, вводя адрес виртуального хоста . То есть прямо в адресной строке браузера вводите: http://mysite.local/script.php - всё, теперь скрипт запустится и выведет свой результат.

    Надеюсь, данная статья поможет многим новичкам, только начинающим изучать PHP .

    Возможно ли узнать более детальную информацию о браузере посетителя кроме строки, содержащейся в $_SERVER[«HTTP_USER_AGENT»] : поддерживает ли яву, апплеты, таблицы стилей и фреймы? А может это вообще гуглобот зашел?
    Предистория Захотелось заказчику, чтобы при заходе на сайт отображался его любимый логотип с пробегающей по нему искоркой света… Уговорить отказаться от этой идеи человека я так и не смог, но в итоге мы решили, что радость эта будет отображаться только раз, и только при заходе на главную страницу. Если человек попал на сайт с поисковика, он сразу переходит на страницу. Если он руками вписывает адрес в браузер, он перенаправляется на страницу с анимацией. После успешного отображения в куки пишется маркер, и видео больше не грузится. Но… Если на сайт зайдет не человек, а поисковик, то писать себе куки он не будет. Поэтому он всегда будет натыкаться на страницу с анимацией, и в выдаче поисковиков мы себя так и не увидим. Да и зачем поисковику логотип компании видеть:)Как можно узнать что-либо о браузере клиента Проблема в итоге была решена методом поиска подстроки имен пауков нескольких известных поисковиков в переменной $_SERVER[«HTTP_USER_AGENT»] . Но перед этим я походил по ману и обнаружил интересную функцию get_browser() . Она умеет выдавать массив параметров браузера гостя нашего сайта, назначения половины которых, правда, я так и не понял:) Единственная тонкость работы этой функции в том, что она требует наличия на хосте свежей версии файла browscap.ini , а также настройки php.ini . Очевидно что нашим ленивым (просьба не обижаться) админам влом постоянно обновлять этот файлик, так что на это обычно забивают и функция попросту недоступна. Проверить это можно, заглянув в phpinfo() , отыскав там диррективу browscap , и ничуть не удивившись что напротив нее гордо красуется надпись «no value», приступить к прочтению следующего параграфа.Что же делать Для начала нам нужен сам файл browscap.ini . Его можно скачать с http://browsers.garykeith.com/ . Может он есть и еще где-то, но данный источник рекомендуемый для скачивания самим PHP, по-этому пользуемся именно им.
    Возникает вопрос: а куда нам, собственно, теперь его пристроить? Админ нас к серверу не подпустит, да и в настройках ковыряться не даст. По-этому надо бы поискать другой вариант. А их в сети нашлось целых два.
    • Browser Capabilities PHP Project - PHP5 ONLY
    Тут находятся детальные и простые инструкции по запуску. Если вкратце, остается скачать нужную библиотеку, подключить в нужное место, и вызвать соответствующую функцию. Для Browser Capabilities PHP Project вызов выглядит вот так:

    If(ini_get("browscap"))
    {
    //неленивые админы попались

    /* старт шутки */
    //вероятность выполнение участка кода стремится к нулю поэтому пишем сюда
    echo "Начальство - ты меня задрало!";
    /* конец шутки - всем смеяться:)*/

    $browserInfo=get_browser();

    }
    else
    {
    //используем нашу библиотеку
    require_once("browscap.php");
    $bc = new Browscap("path/to/the/cache/dir");
    $browserInfo=$bc->getBrowser();

    В результате чего получим примерно следующее
    stdClass Object
    => Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_5_2; en-us) AppleWebKit/525.18 (KHTML, like Gecko) Version/3.1.1 Safari/525.18
    => ^mozilla/5\.0 \(macintosh; .; .*mac os x.*\) applewebkit/.* \(.*\) version/3\.1.* safari/.*$
    => Mozilla/5.0 (Macintosh; ?; *Mac OS X*) AppleWebKit/* (*) Version/3.1* Safari/*
    => Safari 3.1
    => MacOSX
    => Safari
    => 3.1
    => 3
    => 1
    => 1
    => 1
    => 1
    => 1
    => 1
    => 1
    => 1
    => 2
    => 2
    => 1
    =>
    =>
    =>
    =>
    =>
    =>
    =>
    =>
    =>
    =>
    =>
    =>
    =>
    =>
    =>
    =>
    => 0
    =>
    => 0
    )

    UPD. Полученные данные свидетельствуют лишь о поддержке браузером некоторой технологии, а не о ее доступности, так как файл browscap.ini это по сути база данных всех веб-клиентов, в которой по значению User-Agent браузера предоставляется информация о поддерживаемых этим браузером технологиях. Тоесть для современных браузеров при отключенных куках и яве соответствующие параметры все равно будут возвращать еденицу.

    Социальные сети