как присвоить переменной значение функции?

dml

Новичок
как присвоить переменной значение функции?

суть в чем, есть функция, которая обрабатывает текст (обрезает до заданного кол-ва слов).
Необходимо значение этой функции передать одной переменной!

что то вроде
PHP:
$x = crop($text, "\n");
как это сделать?
--
простите, если вопрос глуп :)
 

dml

Новичок
тогда по идее $x = crop($text, "\n"); должно работать - однако не работает :(

-~{}~ 29.05.07 01:44:

попробую понятнее спросить:
---
$text="la lal la";
$x = crop_10($text);
echo "$x";
---
должен вывести только la

как ?

-~{}~ 29.05.07 01:55:

в данном случае, как не странно, просто исполняется функция, тоесть просто выводит "la", а не присваивает значение переменой $x
 

Mr_Max

Первый класс. Зимние каникулы ^_^
Команда форума
http://www.php.net/manual/ru/language.functions.php

<?php
function foo($arg_1, $arg_2, /* ..., */ $arg_n)
{
echo "Example function.\n";
return $retval;
}
?>



-~{}~ 29.05.07 01:22:

тоесть просто выводит "la", а не присваивает значение переменой $x
Шайтанство такое-то
Посмотрите, пожалуйста, внимательно на свой код.

Случайно не Вы потом выводите значение этой переменной?
$x = crop_10($text);
echo "$x";

должен вывести только la
В Вашем случае "должно" вывести переменную $x которая присваивается в результате выполнения ф=ции crop_10 с аргументом $text



-~{}~ 29.05.07 01:29:

должен вывести только la
а что у Вас происходит внутри ф-кции только Вам извесно
 

dml

Новичок
да, $x в последствии должен быть выведен :)
---
сама функция - такая:
function crop_10($string, $delimiter)
{
$options = split(" ",$string);
for($i=0;$i<10;$i++)
{
echo "$options[$i]";
}
}
 

Mr_Max

Первый класс. Зимние каникулы ^_^
Команда форума
Вы потеряли return
 

dml

Новичок
$x как раз то и не выводится!!! вот в чем беда то! ему не присваивается никаких значений... :(

$x = crop_10($text);
выводит не присваивает ничего $x, а просто исполняет функцию! как будто написано:

crop_10($text);
---
я вот и озадачен :(
 

Mr_Max

Первый класс. Зимние каникулы ^_^
Команда форума
Читайте немножко внимательнее. Ответ дан уже несколько раз

1. Вы потеряли return
http://www.php.net/manual/ru/language.functions.php

-~{}~ 29.05.07 02:02:

Ваша конструкция for($i=0;$i<10;$i++) немного ошибочна

-~{}~ 29.05.07 02:07:
У Вас может быть $options < 10 елементов массива.
в итоге $options[$i] будет давать Нотис ошибки
 

Crazy

Developer
dml, не огорчайся, ты просто... как бы политкорректнее... имеешь отставания в умственном развитии. Это бывает. Ничего страшного. На долголетии не сказывается.

Прочитай следующий текст медленно. 8 раз.

В твоей функции есть код вывода -- поэтому она выводит. В ней нет кода возврата значения -- поэтому она ничего не возвращет. А раз она ничего не возвращает -- в переменную ничего не присваивается.

Начинает потихоньку проясняться? Теперь покажи, в какой строке твоей функции формируется значение, которое должно попать в $x. Почему для входа "la lal la" она, в твоем понимании, должна вернуть "la", а не "хрю", "отлезь гнида" или "бронепоезд прибывает в полдень, ваше превосходительство!" ?
 

Mr_Max

Первый класс. Зимние каникулы ^_^
Команда форума
добавил в предыдущий пост
 
Сверху