Почему, когда я запускаю .PHP скрипт в Ubunutu, он просто эхо сам script?
Мне нужно декодировать данные двоичного содержимого одного из моих файлов кеша Chrome, которые я называю cache.log
. Способ, которым я пытаюсь его декодировать, - это использовать PHP скрипт, который я нашел здесь
http://www.frozax.com/blog/2011/05/recover-file-google-chrome-cache-gzipped/
Я уже установил php со следующей командой
sudo apt-get install php5 libapache2-mod-php5
sudo apt-get install php5-cgi
Когда я пытаюсь запустить index1.php
script, я получаю следующее в терминале
[email protected]:~/Desktop$ php index1.php
PHP Deprecated: Comments starting with '#' are deprecated in /etc/php5/cli/conf.d/mcrypt.ini on line 1 in Unknown on line 0
// cache.log is a copy of chrome cache page with only the file content section
$cacheString = file_get_contents("cache.log");
$matches = array();
preg_match_all('/\s[0-9a-f]{2}\s/', $cacheString, $matches);
$f = fopen("t.bin","wb");
foreach ($matches[0] as $match)
{
fwrite($f,chr(hexdec($match)));
}
fclose($f);
ob_start();
readgzfile("t.bin");
$decoded_data=ob_get_clean();
echo $decoded_data;
Как вы можете видеть, все, что он делает, является эхом от script.
Как я могу запустить script?
Ответы
Ответ 1
Не похоже, что код завернут:
<?php
?>
Если у него этого нет, он будет просто эхом вместо выполнения. Причиной этого является то, что PHP позволяет смешивать сценарии сервера и HTML в одном файле.
<html>
<head><title></title></head>
<body>
<?php
//Inside the php block so it gets executed and prints 'Hello World'
echo "Hello, World!";
?>
<!--Outside the php block so it just gets echoed and prints 'echo "Hello, World!";' -->
echo "Hello, World!";
</body>
</html>