[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Завершить функцию
Страницы: 1, 2
Гость_Дмитрий
Всем привет! Нужна помощь. Есть две функции в скрипте и они между собой влияют друг на друга. Это в почте. К примеру: функция
user_data(считывает информацию пользователя);
а другая функция перезаписывает информацию пользователя. Так вот, мне надо сделать так, чтобы функция
user_data();
остановилась после выполненой работы, чтобы не влияла на другие функции. Использовал: ехit и rеturn; , но они останавливали весь скрипт после той функции. А мне надо чтобы эта функция выполнила свою работу и завершилась.
Игорь_Vasinsky
break;

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
Гость_Дмитрий
break; - непомогает. Другие некоторые функции неработают, но уже лучше.
Пробывал так:
user_data();
break;
sign63
По идее если ты вызываешь функцию она тебе один ответ и вернет, функция выполнит свою работу и завершится... столько раз сколько ты захочешь. Рекурсии не должно быть
А так да есть прерывание:

while ($foo) { <--------------------┐
continue; ---goes back here--┘
break; ----- jumps here ----┐
} |
<--------------------┘


_____________
user posted image
Гость_Дмитрий
Цитата (sign63 @ 14.03.2013 - 16:35)
По идее если ты вызываешь функцию она тебе один ответ и вернет, функция выполнит свою работу и завершится... столько раз сколько ты захочешь. Рекурсии не должно быть
А так да есть прерывание:

while ($foo) { <--------------------┐
continue; ---goes back here--┘
break; ----- jumps here ----┐
} |
<--------------------┘

Объясните подробнее что вписать в while($) ? И как завершить функцию user_dаta();
если можно, код пожалуйста напишите.
Игорь_Vasinsky
а. ты в не в теле функции используешь..

в теле return

while - это цикл вообще.

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
Гость_Дмитрий
Еще раз напоминаю, функция которую надо завершить влияет на другую функцию котороя в скрипте ниже, в результате глюк.
sign63
С Вайлом это был пример функций continue - продолжить, break - прервать.
может быть вызывать эту функцию после проверки?

function userDate(){
...код
}
...
if (проверка){
userDate()
}
else{
...ничего(или не писать вообще елсе)
}


Это просто принцип, весь код же я не вижу)

_____________
user posted image
Игорь_Vasinsky
не понятна проблема.

функция делает свою работу и должна остановиться.

нет ни кода функции ни конкретного пояснения на примере - когда останов должен быть.

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
Гость_Дмитрий
В этом файле идет в самом начале инклуд файла func.рhр.
В нем есть функция считывание данных пользователя и перезапись. Т.е. Там одни переменны.
Так, вот в почте когда пользователь прочтет сообщение, идет перезапись информации пользователя $nеw_ls надпись "Новое сообщение" исчезает. Сделал я возможность смена ника на сайт, везде работает как часики, а в почте не хочет. Везде применя функцию

usеr_data('../../users/логин.php');//считывает данные о пользователе.
//Здесь код вывода ника
//потом письма входящие
//и код(функция) который перезаписывает файл пользователя меняя переменную $new_ls


И чтобы эта функция не мешала функции перезаписи надо ее завершить как-то.
Гость_Дмитрий
Я с телефона программирую сайт, поэтому не могу скопировать весь код. Могу частями по 1000символ. Приношу извинения.
Игорь_Vasinsky
Цитата
Я с телефона программирую сайт,


ааа.. я то думаю.

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
Гость_Дмитрий
Пишу часть кода:

include ('../../templates/func.php');//функции в этом файле
//тут код открывание файла почты.

user_data('../../data/users/'.trim($mes_ar[0]).'.php'); //считывает данные о юзере
//код смены ника
//код самих писем в ящике Входящие.

//если это было новое писмо, то перезаписываем

write_to_file('../../data/inbox/'.$login.'.php', "<?php\r\n/*\r\n$mes_to_file\r\n*/\r\n?>");

$str_to_user_file = str_user_data(); # Строка данных пользователя находится в файле templates/func.php

write_to_file('../../data/users/'.$login.'.php', "<?php\r\n/*\r\n$str_to_user_file\r\n*/\r\n?>");
//шапка низа.

так вот функции user_datа();
влияет на str_user_data(); т.к. эти функци в func.php.
walerus
Что внутри функции user_data(), какие обработчики ??? что она выполняет, куда она считывает данные юзера ??
Гость_Дмитрий
Функция
#Строка данных пользователя
function str_user_data()
{
global $login, $email, $passw, $reg_date, $last_visit, $name, $site, $icq, $pol, $otkuda, $modelphone, $operator, $show_mail, $reputacia, $status, $data_rozhd, $bantime, $bantxt, $banwho, $mes_guest, $mes_forum, $mes_komm, $new_ls, $activ_account, $izm_repu, $plusov, $minusov, $o_sebe, $rating, $time_in_site, $vhodov, $all_temes, $nickname, $mes_chat, $status_name, $nick_name, $podpis, $strana, $numbertel, $time_site, $interesy, $lybmusic, $lybfilm, $lybbook, $browser_soft, $ip_ip, $show_numbertel, $monet;

$str_user_data = "$login\r\n$email\r\n$passw\r\n$reg_date\r\n$last_visit\r\n$name\r\n$site\r\n$icq\r\n$pol\r\n$otkuda\r\n$modelphone\r\n$operator\r\n$show_mail\r\n$reputacia\r\n$status\r\n$data_rozhd\r\n$bantime\r\n$bantxt\r\n$banwho\r\n$mes_guest\r\n$mes_forum\r\n$mes_komm\r\n$new_ls\r\n$activ_account\r\n$izm_repu\r\n$plusov\r\n$minusov\r\n$o_sebe\r\n$rating\r\n$time_in_site\r\n и т.д.";
return $str_user_data;
}

щас вторую вышлю
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.