Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Открытие файла *.php
Форумы портала PHP.SU » » Работа с файловой системой и файлами » Открытие файла *.php

Страниц (1): [1]
 

1. BARRAKUDA099 - 29 Августа, 2011 - 13:44:03 - перейти к сообщению
Здравствуйте, я пишу админку и меня очень интересует, какой функцией можно открыть файл *.php. Гуглил, все функции, что там были выводят что-то типо этого "Resource id #3" а мне надо открыть содержимое php файла и отредактировать его! Помогите, если не затруднит, скиньте функцию с комментариями Улыбка , чтобы уж совсем разобраться. Заранее спасибо!
2. Viper - 29 Августа, 2011 - 13:50:20 - перейти к сообщению
Самым наглым образом украдено с http://ua.php.net/manual/en/function.fread.php

PHP:
скопировать код в буфер обмена
  1. $filename = 'C:\WWW\htdocs\file.php';
  2. $handle = fopen($filename, "rb");
  3. $contents = fread($handle, filesize($filename));
  4. fclose($handle);
  5.  
  6. echo '<pre>';
  7. var_dump($contents);
  8. echo '</pre>';
3. BARRAKUDA099 - 29 Августа, 2011 - 13:58:42 - перейти к сообщению
Viper пишет:
Самым наглым образом украдено с http://ua.php.net/manual/en/function.fread.php

PHP:
скопировать код в буфер обмена

$filename = 'C:\WWW\htdocs\file.php';
$handle = fopen($filename, "rb");
$contents = fread($handle, filesize($filename));
fclose($handle);

echo '<pre>';
var_dump($contents);
echo '</pre>';


Это не то, он выводит результат выполнения php скрипта а мне надо вот например если исходный код в файле FILE2.php
CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. <?php include('FILE.php'); ?>
  3.  

то и выводит содержимое этого файла то есть не результат выполнения FILE.PHP а код файла FILE2.PHP
то есть это
CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. <?php include('FILE.php'); ?>
  3.  
4. Viper - 29 Августа, 2011 - 17:14:53 - перейти к сообщению
BARRAKUDA099 вы хоть пробовали? Source code страницы посмотрите хоть!

PS! Усложню вам задачю. Вместо
PHP:
скопировать код в буфер обмена
  1. echo '<pre>';
  2. var_dump($contents);
  3. echo '</pre>';

напишите
PHP:
скопировать код в буфер обмена
  1. echo '<textarea>'.$contents.'</textarea>';

Тоже не работает? Нахмурился
5. DeepVarvar - 29 Августа, 2011 - 17:43:51 - перейти к сообщению

В текастарию "эхать" без htmlspecialchars.
После изменений:
PHP:
скопировать код в буфер обмена
  1. file_put_contents("file.php",$code);
6. Мелкий - 29 Августа, 2011 - 18:49:00 - перейти к сообщению
DeepVarvar пишет:
В текастарию "эхать" без htmlspecialchars.

Лучше с. Иначе, если в коде попадётся </textarea>, блок будет формально закрыт и дальнейшая разметка интерпретироваться браузером.

 

Powered by ExBB FM 1.0 RC1