[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Массив
mid
Вот мой код:

<?php
$file = file_get_contents("all_mail.txt");
$content = explode(" | ", $file);
?>

Код файла all_mail.txt

lena@mail.ru | katya@mail.ru | marusya@mail.ru | vasya@mail.ru


Как узнать сколько ключей в массиве $content ?



Спустя 2 минуты, 46 секунд (21.01.2012 - 10:59) sharki написал(а):

Спустя 2 минуты, 39 секунд (21.01.2012 - 11:01) mid написал(а):
Я не фига там ничего не понял.Слишком мудрено там объясняют!

Спустя 6 минут, 1 секунда (21.01.2012 - 11:07) alexbel2404 написал(а):

Спустя 6 минут, 33 секунды (21.01.2012 - 11:14) redreem написал(а):
echo count($content);
biggrin.gif

Спустя 6 минут, 19 секунд (21.01.2012 - 11:20) mid написал(а):
Вот вариант count(); мне нравится больше...Теперь такой вопрос:
Покажу на примере что я хочу:
<?php
$file = file_get_contents("all_mail.txt");
$content = explode(" | ", $file);
$nomber = count($content);
$contents = "";
while($nomber != ''){
$contents .= $content[]; ///вот здесь нужно пользоваться значение $nomber
/*
Каждый раз значение $nomber уменьшается на 1! то есть если как-то сделать чтобы $content[] - в скобочки помещалось значение $nomber,
то получится что все будет в переменной,что мне и нужно!
*/

$nomber = $nomber - 1;
echo $contents;
}
?>

Спустя 2 минуты, 11 секунд (21.01.2012 - 11:23) mid написал(а):
Вот так не рабит: $contents .= $content[.$nomber.];
Хотя так и не должно работать,но я попытался smile.gif

Спустя 20 минут, 52 секунды (21.01.2012 - 11:43) alexbel2404 написал(а):
Цитата (redreem @ 21.01.2012 - 12:14)
echo count($content);
biggrin.gif

ну нафига все испортил)

Спустя 3 минуты, 45 секунд (21.01.2012 - 11:47) mid написал(а):
alexbel2404,я с твоей ссылки вычитал!
http://php.net/manual/ru/function.count.php

Спустя 12 минут, 16 секунд (21.01.2012 - 11:59) UnWind написал(а):
Я по мойму знаю как решить эту проблему, но я так и не понял, что должно получится на выходе ?
Т.е. Вам просто нужно прочитать данные из массива циклом или что ?
Что за уменьшение на один и т.д. ?

Спустя 3 минуты, 52 секунды (21.01.2012 - 12:03) mid написал(а):
Вот у меня есть файл с е-майлом пользователей.
Его я заношу в массив.Заранее я не знаю какое кол-во у меня ключей.Узнаю с помощью count() дальше мне нужно с помощью while на каждую почту отправить сообщение.но вместо функции отправки сообщений mail() я пока написал echo на переменную куда заносятся мыльник!Как-то так..

Спустя 1 минута, 24 секунды (21.01.2012 - 12:05) UnWind написал(а):
mid
Ок, понял. Это проще простого.

Спустя 1 минута, 36 секунд (21.01.2012 - 12:06) mid написал(а):
вот вам мой код ещё раз:
<?php
$file = file_get_contents("all_mail.txt");
$content = explode(" | ", $file);
$nomber = count($content);
while($nomber != ''){
$contents = $content[];
$nomber = $nomber - 1;
echo $contents;
}
?>


all_mail.txt


lena@mail.ru | katya@mail.ru | marusya@mail.ru | vasya@mail.ru

Спустя 59 секунд (21.01.2012 - 12:07) UnWind написал(а):
mid
Ок. Сейчас в общем напишу все.

Спустя 11 минут, 19 секунд (21.01.2012 - 12:19) UnWind написал(а):
Что мешает сделать так ?
И подставляй заместо echo - mail или что там у тебя

<?php
$file = file_get_contents("all_mail.txt");
$content = explode(" | ", $file);
for($i=0; $i<count( $content ); $i++) {
echo $content[$i] . '<br/>';
}


Спустя 1 минута, 45 секунд (21.01.2012 - 12:20) mid написал(а):
А что за функция for?и там написанно типо если переменнай $i меньше кол-во ключей то прибовлять +1 !да?можно так конечно!

Спустя 1 минута, 23 секунды (21.01.2012 - 12:22) UnWind написал(а):
mid
Это не функция, это цикл (Читайте мануал или книгу по PHP). wink.gif
Все верно.

P.S.:> Вообще в дальнейшем, если хотите хорошо писать на PHP, вы должны как минимум знать все циклы и функции, что бы знать где лучше и что применить, а не 2 строчки заменять целым блоком в строк 10 или какими то самописными функциями и классами.

Спустя 4 минуты, 21 секунда (21.01.2012 - 12:26) mid написал(а):
Спасибо!+1 в карму.
И так подведем итог:

mail.php

<?php
$file = file_get_contents("all_mail.txt");
$emails = explode(" | ", $file);
for($i=0;$i<count($emails);$i++)
{
$title = "Заголовок письма";
$content = "Создержание письма";
mail($emails[$i], $title, $content);
}
?>


all_mail.txt

lena@mail.ru | katya@mail.ru | marusya@mail.ru | vasya@mail.ru



Спустя 1 минута, 39 секунд (21.01.2012 - 12:28) UnWind написал(а):
mid
Не за что, благодарю за "+" wink.gif
Обращайся если что.

Спустя 2 минуты, 1 секунда (21.01.2012 - 12:30) UnWind написал(а):
<?php
$file = file_get_contents("all_mail.txt");
$emails = explode(" | ", $file);
for($i=0;$i<count($emails);$i++)
{
$title = "Заголовок письма";
$content = "Создержание письма";
mail($emails[$i], $title, $content);
}
?>

Опять ошибка. Зачем Вы нагружаете тачку повтором записи переменных ?
$title = "Заголовок письма";
$content = "Создержание письма";

Поместите это за тело цикла.
Это все равносильно тому, что например заставить Вас переписывать книгу и с каждым словом бить линейкой по рукам (Простите за грубый пример).

Спустя 12 минут, 1 секунда (21.01.2012 - 12:42) UnWind написал(а):
Еще дополню скорее не замечанием, а советом.
Закрывать тело PHP кода не советую, это бреж в безопасности.
Объясняю - если злоумышленник захочет вставить что то после тела PHP кода, то в данном случае код выполнится, если же не закрывать код, то код злоумышленника зачтется за ошибку и не исполнится.
Словите фишку дорогие мои. cool.gif

Спустя 16 минут, 6 секунд (21.01.2012 - 12:58) redreem написал(а):
брешь в безопасности - давать злоумышленнику вообще что-то вставить.

Спустя 3 минуты, 51 секунда (21.01.2012 - 13:02) UnWind написал(а):
redreem
Тут я с тобой согласен smile.gif

Спустя 2 часа, 36 минут, 10 секунд (21.01.2012 - 15:38) mid написал(а):
UnWind ,огромное спасибо.Все учту!

Спустя 38 секунд (21.01.2012 - 15:38) UnWind написал(а):
mid
Не за что, кушайте с булочкой! wink.gif


_____________
По любому вопросу : programmer-php@mail.ru
Быстрый ответ:

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