nixp.ru v3.0

23 января 2017,
понедельник,
07:39:02 MSK

DevOps с компанией «Флант»
Yorik написал 23 декабря 2004 года в 17:12 (374 просмотра) Ведет себя как мужчина; открыл 13 тем в форуме, оставил 25 комментариев на сайте.

Привет всем

Я новичок в PHP.

Есть один скромный вопрос: Хочу много инфы по написанию самомодифицирующихся программ на PHP (OS — Linux, 4-й PHP). Может кто знает «грибные места», книги?

Спасибо

Genie

А ты типа этта… не тот инструмент.. т.е. не тот язык выбрал.

учи Lisp. Вот там таких примерчиков — просто есть.

Yorik

Спасибо за совет. С Lisp-ом я не знаком — так что поковыряюсь. Но я вообще-то интересовался этим вопросом именно с использованием PHP. Язык я только изучаю, поэтому хочу до конца узнать побольше его возможностей.

…Неужели написание СМП на PHP удел извращенца?.

И вопрос нумбер 2: существуют ли профиляторы для PHP-программ

Я так понял, что gprof с интерпретируемыми языками не работает вообще.

Genie
…Неужели написание СМП на PHP удел извращенца?.


Видишь ли. Для самомодифицирующихся программ нужно одно маленькое условие — должен быть мханизм выполнения данных как кода.

Чего в PHP, насколько я его знаю, нет.

Таким свойством обладает вообще очень мало языков. Но, при этом, чтобы это был ещё и удобный инструмент для выполнения определённого класса задач — это вообще почти нереальность.

Правда, вот написать программный комплекс, который динамически строить и модифицирует свои отдельные функциональные блоки — можно на любом скриптовом (или точнее в интерпретирующем) языке с возможностью сохранять файлы и выполнять их этим же движком.

Профилированием программ вообще как-то не занимался за ненадобностью…. ;) лучше сперва подумать…..

Uncle Theodore
Genie
Видишь ли. Для самомодифицирующихся программ нужно одно маленькое условие — должен быть мханизм выполнения данных как кода.

Чего в PHP, насколько я его знаю, нет.

Таким свойством обладает вообще очень мало языков. Но, при этом, чтобы это был ещё и удобный инструмент для выполнения определённого класса задач — это вообще почти нереальность.

Правда, вот написать программный комплекс, который динамически строить и модифицирует свои отдельные функциональные блоки — можно на любом скриптовом (или точнее в интерпретирующем) языке с возможностью сохранять файлы и выполнять их этим же движком.

Гы! Так уж прям и так!…

$ cat self.sh

#!/usr/bin/bash

echo «echo \"Genie, get out!\"» >> $0;

$ ./self.sh

Genie, get out!

$ cat self.sh

#!/usr/bin/bash

echo «echo \"Genie, get out!\"» >> $0;

echo «Genie, get out!»

Во многия знания суть многия печали…

Good Luck,

UT

Genie

Ну и где же тут именно противоречие с моими словами?

наоборот. только подтверждает сказанное:

написать программный комплекс, который динамически строить и модифицирует свои отдельные функциональные блоки — можно на любом скриптовом
Uncle Theodore
Genie
Ну и где же тут именно противоречие с моими словами?

наоборот. только подтверждает сказанное:

Противоречия нету, просто уж больно кудряво ты высказываешься. :-)

»…программный комплекс, который динамически строит и модифицирует свои отдельные функциональные блоки…»

Такая фишка и на PHP прокатит, только вот ЗАЧЕМ?! :-)

Good Luck,

UT

Genie

Для полноты и точности ответа.

Правда, вот написать программный комплекс …. можно


Противоречия нету, просто уж больно кудряво ты высказываешься. :-)


С кем не бывает. ;)

Я вообще в последнее время странно высказываюсь. Даже по собственным оценкам….

Дмитрий Шурупов

Ой-ой!

>> должен быть мханизм выполнения данных как кода.

>> Чего в PHP, насколько я его знаю, нет.

Как это нет?

eval — Evaluate a string as PHP code

eval() evaluates the string given in code_str as PHP code. Among other things, this can be useful for storing code in a database text field for later execution.

http://ru.php.net/manual/en/function.eval.php

Пример использования:

$tmp ="echo 'test’;»;

eval($tmp);

Соответственно, крутить там можно основательно.

Genie

хех.. пробовал я его в районе php 4.1/4.2

каких точно — не вспомню уже.

лучше бы не было ;))

потому и сделал вывод, что — нормально работающего нет.

и у пёрла есть eval, и у шелла.

только — несколько не то это…..

myst

Ай! Да забейте вы. Я, вообще, не понимаю, зачем может понадобиться писать СМК на PHP??? Это просто какой-то БРЕД. Это ж какие такие задачи-то решать надо? Может, если всё так запущено, стоит подумать про какой-то другой язык реализации…

Yorik

Спасибо всем.

Думаю, получил кое-какую полезную информацию

… и насчет eval( ) в PHP я не знал, хотя это несколько не то…

Best Regards, 3-1415

ecobeingecobeing.ru
Экология и вегетарианство на благо всем живым существам Планеты.