[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Стындно спрашивать.
lawbreaker
Всем Привет...
у меня есть вопрос, вот когда создаёш функцию то что нужно писать в скобки?
PHP
function test($???)
{
$abc "erewr";
$bax "sdfee";
echo 
$abc;
$abc $bax;
echo 
$bax;
}

какую переменную нужно вписать в кавычки?



Спустя 24 минуты, 54 секунды (12.07.2009 - 16:37) <?php написал(а):
Если я не ошибаюсь, то ничего...
вот примеры
PHP
function loginForm()

PHP
function login()

Спустя 1 час, 33 минуты, 54 секунды (12.07.2009 - 18:11) lawbreaker написал(а):
а почему примеры пустые?

Спустя 4 минуты, 39 секунд (12.07.2009 - 18:16) PandoraBox2007 написал(а):
а зачем тебе переменная функции если ты ее не задействовал

PHP
function TestEcho($text$enable false)
{
 if (
$enable)
  echo 
$text;
}

Спустя 10 минут, 34 секунды (12.07.2009 - 18:26) KirA3342 написал(а):
Переменная туда пишется, или несколькно...с которыми работа в функции идет. К примеру
PHP
function sq($a)
{
$a $a*$a;
}


Обращаться к ней:
PHP
sq(2);
Выведет: 4

Спустя 4 минуты, 48 секунд (12.07.2009 - 18:31) lawbreaker написал(а):
а если так зедалею
PHP
$a "oO";
function echo()
{
echo 
$a;
}
echo();

оно выведет (оО) или мне нужно будем в скобки прописать переменную $a?

Спустя 20 минут, 59 секунд (12.07.2009 - 18:52) <?php написал(а):
Я думаю например пишешь так
PHP
case 'loginForm':    // форма для авторизации 
    
loginForm(); 
    break;

А так функция и помоему необязательно писать что то внутри скобок...это я так считаю

PHP
function loginForm()

  echo 
'<h1>Вход</h1>'
  echo 
'<form action="link" method="post">'."\n"
  echo 
'Логин: <input type="text" name="name" value="" /><br/>'."\n"
  echo 
'Пароль: <input type="password" name="pass" value="" /><br/>'."\n"
  echo 
'<input type="submit" name="submit" value="Отправить" />'."\n"
  echo 
'</form>'."\n"
}

Спустя 1 минута, 5 секунд (12.07.2009 - 18:53) lawbreaker написал(а):
<?php
ясно, мы обы не знаем етого...
где нашы профи?
помогите плиз

Спустя 6 минут, 55 секунд (12.07.2009 - 19:00) Krevedko написал(а):
Наверное нельзя использовать echo для названия функции.
А вообще надо в скобки...и вызвать функцию. Ну или объявить переменную $a глобальной в функции.

Спустя 5 минут, 38 секунд (12.07.2009 - 19:06) Krevedko написал(а):
PHP
$a = "oO";

function ech($a)
{
echo $a;
}
ech($a);


или

PHP
$a = "oO";
function ech()
{
global $a;
echo $a;
}
ech();


если ничего не путаю. просто я щас на ява-скрипт насел, там с функциями несколько по другому.

Спустя 36 минут, 19 секунд (12.07.2009 - 19:42) twin написал(а):
PHP
$a "oO";

function 
ech($a)
{
return 
$a;
}

echo 
ech($a);

Спустя 1 час, 4 минуты, 24 секунды (12.07.2009 - 20:46) Krevedko написал(а):
угу. это третий вариант

Спустя 31 минута, 36 секунд (12.07.2009 - 21:18) Nikitian написал(а):
Я на этом форуме первый день, но меня как-то смущают подобные топики от людей, которые здесь уже полгода и отпостили почти полтыщи постов. Эмм, про синтаксис оформления функций и зарезервированные слова обычно узнают в первые дни изучения языка.

Кратко.
Если функция не получает никаких параметров и результат возвращает не по ссылке, то в скобках ничего писать не надо.
Если функция должна получать параметры, то они пишутся в скобках в строгом порядке.
Если функция имеет необязательные параметры, то они пишутся после обязательных (если их нет, то сразу) с указание значения по дефолту:
PHP
//правильно
function foo1($var1,$var2,$var3='any',$var4=5){}
function foo2($var3='any',$var4=5){}
//Неправильно
function foo3($var3='any',$var4=5,$var1,$var2){}
function foo3($var1,$var3='any',$var4=5,$var2){}

Если функция принимает множество параметров, часть из которых обязательная, а часть нет, то можно использовать подобный велосипед:
PHP
function foo($input)
{
$default=array(
'var1'=>'any',
'var2'=>5,
'var4'=>array(1,2,3,4,5)
);
foreach(
$default as $k=>$v)if(!isset($input[$k]))$input[$k]=$v;
/*что-то далее*/
}
В этом случае можно передавать произвольные параметры в произвольном порядке в массиве и обрабатывать не переданные самостоятельно.

Спустя 4 часа, 44 минуты, 22 секунды (13.07.2009 - 02:02) Raito-kun написал(а):
посмеялся biggrin.gif
Nikitian прав) Вообще человек хоть как-то знакомый с программированием это должен знать в обязательном порядке)
Функции, в основном, используются для уменьшения объема и улучшения читабельности кода. Например, зачем нам 10 раз в разных частях делать одни и те же вычисления, но с разными к примеру переменными. для этого и будет служить function. передаваемые параметры - будут те самые переменные, с которыми мы хотим произвести действия, а возвращаемое значение(я)-результат работы функции. ну, по крайней мере, в 90% случаев написания кода на С++ я использую именно для этих целей. например

PHP
function tripple_sum($a,$b,$c){

    $d = $a + $b + $c;

    return $d;
    }

$x = 2;
$y = 5;
$z = 3;

$result = tripple_sum($x, $y, $z);

echo $result;


результатом будет 10. если нам, к примеру, нужно несколько раз складывать 3 различных числа - проще всегда вызывать эту функцию, передавая ей нужные значения. думаю доступно разжевал smile.gif

Спустя 15 часов, 41 минута, 12 секунд (13.07.2009 - 17:43) maximvg написал(а):
Цитата (Nikitian @ 12.07.2009 - 18:18)
Если функция не получает никаких параметров и результат возвращает не по ссылке, то в скобках ничего писать не надо.
Если функция должна получать параметры, то они пишутся в скобках в строгом порядке.

Если человек задаёт подобные вопросы, то было не плохо написать что такое параметры biggrin.gif :
Параметры - это переменные указанные в скобках biggrin.gif .
Они нужны для того, чтобы содержимое функции знало про данные, которые в неё нужно передать. biggrin.gif

Спустя 31 минута, 59 секунд (13.07.2009 - 18:15) Krevedko написал(а):
А еще можно параметры не передавать. Или передавать, но не все.
(В таком случае лучше указать используемые по умолчанию, как написал ув. Nikitian)
Или даже передавать больше, чем нужно (тогда лишние не учитываются).


_____________
Я Андрей и мне 14 лет :)
И ни как не дождусь когда HardWoman меня удалит
Быстрый ответ:

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