PHP и с чем его едят....

Тагрим

Поняшка
ярик, спасибо, я в
PHP:
$offset=$page*$per_page-$per_page
запутался :) все остальное было правильно. просто формула не так немного была
 

kattykatty

New Member
прочитала где-то в Интернете:
Помните: необходимость в вызове деструкторов возникает лишь при работе с объектами, использующими большой объем ресурсов, поскольку все переменные и объекты автоматически уничтожаются по завершении сценария.
А кто-нибудь может привести пример кода, при котором необходимо вызывать деструкторы? мне как-то трудно представить себе эту ситуацию. особенно с учетом того, что всегда выставляется предел времени выполнения скрипта и он вообще не может быть очень большим.
 

Cris

Member
прочитала где-то в Интернете:
Помните: необходимость в вызове деструкторов возникает лишь при работе с объектами, использующими большой объем ресурсов, поскольку все переменные и объекты автоматически уничтожаются по завершении сценария.
А кто-нибудь может привести пример кода, при котором необходимо вызывать деструкторы? мне как-то трудно представить себе эту ситуацию. особенно с учетом того, что всегда выставляется предел времени выполнения скрипта и он вообще не может быть очень большим.
пример шас ненапишу, так как сам не силько юзаю это, но
особенно с учетом того, что всегда выставляется предел времени выполнения скрипта и он вообще не может быть очень большим.:
время выполнение скрипта можно продлить намного),
и есть скрипты очень большые)) до 10000+строк которые используют много ресурсов)
 

GrAndSE

Тёмный
Модератор
пример шас ненапишу, так как сам не силько юзаю это, но
особенно с учетом того, что всегда выставляется предел времени выполнения скрипта и он вообще не может быть очень большим.:
время выполнение скрипта можно продлить намного),
и есть скрипты очень большые)) до 10000+строк которые используют много ресурсов)
Как умно, как умно. Зачем писать, если не разбираешся?
10к+строк - теперь уже совсем немного. Реальный проект:
Код:
find . -type f -name \*.php -exec cat '{}' + | wc -l
11779
В конце выполнения вызов:
Код:
echo 'Memory usage: '.round(memory_get_usage()/1024/1024, 2).'MB<br/>';
возвращает на довольно жестких операциях:
Много ресурсов? Самое большое изуверство написнаое на php, которое я когда-либо видел занимало в памяти пару-тройку десятков МГб, благодаря большому количеству библиотек.

Есть конечно и такие извращения, что не хватает и времени выполнения дефолтного и в память не влазит. Например, если пытаться строить какие-нибудь системы рапознавания образов в виде веб-приложения на php, как это начали делать в СумГУ. Особенно кривыми руками и без какого-либо мыслительного процесса.
Хотя без оного можно выбирать и по несколько миллионов записей из БД и ещё Бог знает что придумать. По-моему, сама мысль о том, что программист имеет право писать скрипт, превышающий допустимое время выполнения или невмещабщийся в память, является примером отсутствия того самого мыслительного процесса.
 

PainKiller

Пастафарианец
Команда форуму
Супер Модератор
пример шас ненапишу, так как сам не силько юзаю это, но
особенно с учетом того, что всегда выставляется предел времени выполнения скрипта и он вообще не может быть очень большим.:
время выполнение скрипта можно продлить намного),
и есть скрипты очень большые)) до 10000+строк которые используют много ресурсов)
Я думаю вообще не напишешь=) Не только сейчас.
Деструкторы следует вызывать при работе, ну например, с файлами, или же с большими по объему вычислениями. Вызов __destruct() освобождает адресное пространство(например закрывает открытые файлы, разрывает соединение с БД).
 

dreamer

Member
прочитала где-то в Интернете:
Помните: необходимость в вызове деструкторов возникает лишь при работе с объектами, использующими большой объем ресурсов, поскольку все переменные и объекты автоматически уничтожаются по завершении сценария.
А кто-нибудь может привести пример кода, при котором необходимо вызывать деструкторы? мне как-то трудно представить себе эту ситуацию. особенно с учетом того, что всегда выставляется предел времени выполнения скрипта и он вообще не может быть очень большим.
Суть вопроса не совсем понятна. Вызывать деструкторы вручную (т.е. явно) по-моему вообще не нужно, а вообще реализовывать деструкторы необходимо, если объекты используют ресурсы, которые не могут быть закрыты простым удалением (например файлы или другие соединения) и вы не хотите чтоб они были открыты после удаления объектов и до завершения работы всего скрипта.
Или один пример из жизни – объект содержал ссылку на другой, содержащий кольцевую ссылку на первый. В связи с этим ни один из них небыл удален и через некоторое время память переполнилась (такие объекты постоянно создавались и удалялись в больших количествах).
В таком случае нужно явно вызывать метод, который будет разрывать ссылки.
 

dreamer

Member
Например, если пытаться строить какие-нибудь системы рапознавания образов в виде веб-приложения на php, как это начали делать в СумГУ. Особенно кривыми руками и без какого-либо мыслительного процесса.
Не гони на СумГУ :)
Это учебные проекты. Почему бы не совместить обучение похапэ и распознавание образов?
 

V@nyok

Глава RSP-Team
При обращении к файлу, в браузер выводит содержимое файла, хотя так не должно быть.
Подскажите пжл. где ошибка в етом коде:
PHP:
<?

session_start();

function buildOptions($options, $selectedOption) {

foreach ($options as $value => $text) {

if ($value == $selectedOption) {
echo "<option value=\"$value\" selected=\"selected\">".$text."</option>";
} else {
echo "<option value=\"$value\">".$text."</option>";
}
}
}

$genderOptions = array (
"0"			=>			"[Выбрать]",
"1"			=>			"Мужчина",
"2"			=>			"Женщина"
);

$monthOptions = array (
"0"			=>			"[Выбрать]",
"1"			=>			"Январь",
"2"			=>			"Февраль",
"3"			=>			"Март",
"4"			=>			"Апрель",
"5"			=>			"Май",
"6"			=>			"Июнь",
"7"			=>			"Июль",
"8"			=>			"Август",
"9"			=>			"Сентябрь",
"10"			=>			"Октябрь",
"11"			=>			"Ноябрь",
"12"			=>			"Декабрь"
);

if (!isset($_SESSION['values'])) {
$_SESSION['values']['txtUsername'] = "";
$_SESSION['values']['txtName'] = "";
$_SESSION['values']['selGender'] = "";
$_SESSION['values']['selBthMonth'] = "";
$_SESSION['values']['txtBthDay'] = "";
$_SESSION['values']['txtBthYear'] = "";
$_SESSION['values']['txtEmail'] = "";
$_SESSION['values']['txtPhone'] = "";
$_SESSION['values']['chkReadTerms'] = "";
}

if (!isset($_SESSION['errors'])) {
$_SESSION['errors']['txtUsername'] = "hidden";
$_SESSION['errors']['txtName'] = "hidden";
$_SESSION['errors']['selGender'] = "hidden";
$_SESSION['errors']['selBthMonth'] = "hidden";
$_SESSION['errors']['txtBthDay'] = "hidden";
$_SESSION['errors']['txtBthYear'] = "hidden";
$_SESSION['errors']['txtEmail'] = "hidden";
$_SESSION['errors']['txtPhone'] = "hidden";
$_SESSION['errors']['chkReadTerms'] = "hidden";
}

?>
 

akick

letter to god
эта ошибка в настройке вашего веб сервера... вероятно обрабочик файлов *.php(\d)? настроен неверно... или вообще ненастроен..
 
Зверху