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

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Создание файла php средствами самого php

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


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

> Описание: Ошибка при создании файла
Джип
Отправлено: 26 Октября, 2015 - 22:54:57
Post Id


Новичок


Покинул форум
Сообщений всего: 20
Дата рег-ции: Нояб. 2014  


Помог: 0 раз(а)




Здравствуйте.
Задача: создать файл .php средствами самого php.
Делаю это так:
PHP:
скопировать код в буфер обмена
  1. $code=<<<_END
  2. <?PHP
  3. if(!isset($_SESSION)) {session_start();}
  4. //И так далее
  5. ?>
  6. _END;
  7.  
  8. fwrite('index.php', $code);


На выходе получаем:


Как правильно?

(Отредактировано автором: 26 Октября, 2015 - 23:03:43)

 
 Top
Tyoma5891
Отправлено: 26 Октября, 2015 - 23:01:43
Post Id


Частый посетитель


Покинул форум
Сообщений всего: 621
Дата рег-ции: Авг. 2013  


Помог: 5 раз(а)




просто гениально, и само задание, и решение! прорыв в современном программировании..
придраться не к чему единственный вопрос, а какое таинство заложено в коде файла file.php? Улыбка
 
 Top
Джип
Отправлено: 26 Октября, 2015 - 23:04:42
Post Id


Новичок


Покинул форум
Сообщений всего: 20
Дата рег-ции: Нояб. 2014  


Помог: 0 раз(а)




Tyoma5891 пишет:
просто гениально, и само задание, и решение! прорыв в современном программировании..
придраться не к чему единственный вопрос, а какое таинство заложено в коде файла file.php? Улыбка


Какого file.php? Не понял
Так как правильно создать файл?
 
 Top
andrewkard
Отправлено: 26 Октября, 2015 - 23:12:29
Post Id


Участник


Покинул форум
Сообщений всего: 1372
Дата рег-ции: Нояб. 2014  


Помог: 30 раз(а)




Джип
А зачем Вам код текущего файла в новый?
 
 Top
Джип
Отправлено: 26 Октября, 2015 - 23:20:43
Post Id


Новичок


Покинул форум
Сообщений всего: 20
Дата рег-ции: Нояб. 2014  


Помог: 0 раз(а)




andrewkard пишет:
Джип
А зачем Вам код текущего файла в новый?


Это не совсем текущий, но я вот так заковыристо придумал, что в отдельной папке будет лежать отдельный index.php, к которому можно подключаться минуя index.php корня сайта.
Пусть будет так:

(Отредактировано автором: 26 Октября, 2015 - 23:22:22)

 
 Top
Tyoma5891
Отправлено: 26 Октября, 2015 - 23:24:52
Post Id


Частый посетитель


Покинул форум
Сообщений всего: 621
Дата рег-ции: Авг. 2013  


Помог: 5 раз(а)




Джип пишет:
я вот так заковыристо придумал, что в отдельной папке будет лежать отдельный index.php, к которому можно подключаться минуя index.php корня сайта.

просто гениально, и само задание, и решение! прорыв в современном программировании..
придраться не к чему
з.ы. теперь даже вопросов никаких нету!

(Отредактировано автором: 26 Октября, 2015 - 23:25:48)

 
 Top
andrewkard
Отправлено: 26 Октября, 2015 - 23:25:37
Post Id


Участник


Покинул форум
Сообщений всего: 1372
Дата рег-ции: Нояб. 2014  


Помог: 30 раз(а)




что значит
andrewkard пишет:
к которому можно подключаться
?
 
 Top
Джип
Отправлено: 26 Октября, 2015 - 23:28:08
Post Id


Новичок


Покинул форум
Сообщений всего: 20
Дата рег-ции: Нояб. 2014  


Помог: 0 раз(а)




andrewkard пишет:
что значит
andrewkard пишет:
к которому можно подключаться
?


Значит что через адрес http://www[dot]site[dot]ru/folder/index.php
 
 Top
andrewkard
Отправлено: 26 Октября, 2015 - 23:34:43
Post Id


Участник


Покинул форум
Сообщений всего: 1372
Дата рег-ции: Нояб. 2014  


Помог: 30 раз(а)




А зачем тогда создавать файл? Если можно просто через адресную строку?
Джип пишет:
в отдельной папке будет лежать отдельный index.php
 
 Top
Джип
Отправлено: 26 Октября, 2015 - 23:38:35
Post Id


Новичок


Покинул форум
Сообщений всего: 20
Дата рег-ции: Нояб. 2014  


Помог: 0 раз(а)




andrewkard пишет:
А зачем тогда создавать файл? Если можно просто через адресную строку?
Джип пишет:
в отдельной папке будет лежать отдельный index.php


Я псих! Я маньяк! А ты думал? Вот так хочу и всё! Самодур я! Вожжа под хвост попала!
Как правильно это сделать?
 
 Top
caballero
Отправлено: 27 Октября, 2015 - 01:20:34
Post Id


Активный участник


Покинул форум
Сообщений всего: 5998
Дата рег-ции: Сент. 2011  
Откуда: Харьков


Помог: 126 раз(а)




а проблема какая? записать текст в файл?
что не так с file_put_contents () ?

и про полный путь не забывай

(Отредактировано автором: 27 Октября, 2015 - 01:21:52)



-----
Бесплатная система складского учета с открытым кодом https://zippy[dot]com[dot]ua/zstore
 
 Top
Джип
Отправлено: 27 Октября, 2015 - 03:09:41
Post Id


Новичок


Покинул форум
Сообщений всего: 20
Дата рег-ции: Нояб. 2014  


Помог: 0 раз(а)




caballero пишет:
а проблема какая? записать текст в файл?
что не так с file_put_contents () ?

и про полный путь не забывай


Проблема была в том, что вместо - isset($_SESSION), в файл писалось - isset(Array).

Решилось isset(\$_SESSION) экранированием.

(Отредактировано автором: 27 Октября, 2015 - 03:11:00)

 
 Top
DelphinPRO
Отправлено: 27 Октября, 2015 - 03:11:57
Post Id



Активный участник


Покинул форум
Сообщений всего: 7187
Дата рег-ции: Февр. 2012  


Помог: 353 раз(а)




Джип, документацию читать пробовал?
Попробуй, очень помогает.

Цитата:
Heredoc-текст ведет себя так же, как и строка в двойных кавычках, при этом их не имея. Это означает, что вам нет необходимости экранировать кавычки в heredoc, но вы по-прежнему можете использовать вышеперечисленные управляющие последовательности. Переменные обрабатываются, но с применением сложных переменных внутри heredoc нужно быть также внимательным, как и при работе со строками.


http://php.net/manual/ru/languag...types.string.php

Более или менее правильно будет использовать NOWDOC синтаксис, а не экранировать спецсимволы

Цитата:
Nowdoc - это то же самое для строк в одинарных кавычках, что и heredoc для строк в двойных кавычках. Nowdoc похож на heredoc, но внутри него не осуществляется никаких подстановок. Эта конструкция идеальна для внедрения PHP-кода или других больших блоков текста без необходимости его экранирования. В этом он немного похож на SGML-конструкцию <![CDATA[ ]]> тем, что объявляет блок текста, не предназначенный для обработки.


Читать там же.

(Отредактировано автором: 27 Октября, 2015 - 03:13:58)



-----
Чем больше узнаю, тем больше я не знаю.
 
 Top
Джип
Отправлено: 27 Октября, 2015 - 03:34:55
Post Id


Новичок


Покинул форум
Сообщений всего: 20
Дата рег-ции: Нояб. 2014  


Помог: 0 раз(а)




DelphinPRO пишет:
Джип, документацию читать пробовал?
Попробуй, очень помогает.


Не глумиться, там где это не надо, пробовал?
За ссылку спасибо! Собственно такой ответ я и рассчитывал получить!
 
 Top
aspect
Отправлено: 27 Октября, 2015 - 05:22:21
Post Id



Новичок


Покинул форум
Сообщений всего: 5
Дата рег-ции: Окт. 2015  
Откуда: РФ.,Со.->РФ.,МО


Помог: 0 раз(а)




Джип пишет:
DelphinPRO пишет:
Джип, документацию читать пробовал?
Попробуй, очень помогает.


Не глумиться, там где это не надо, пробовал?
За ссылку спасибо! Собственно такой ответ я и рассчитывал получить!


Уважаемый, не заморачивайся. Ты сейчас поиграешься и это пройдет. Просто сделай так, как под спойлером.
Спойлер (Отобразить)

(Отредактировано автором: 27 Октября, 2015 - 05:22:54)

 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB