Автор Тема: Массив  (Прочитано 3942 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Skyer

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 88
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Массив
« : 15 Января 2003, 22:17:01 »
1).

$a[1]="Slava";
$a[2]="Skyer";
.....................
$a[158]="Zadolbalsja";

Если $b равен хотя б какому-нибудь значению из массива $a, то echo "Молодец!", в противном случае - echo "Антимолодец";

Как реализовать? Цикл и if ($b==$a[1] or $b==$a[2] or $b==$a[38]........) само собой не предлагать.

2). Когда возникают подобные вопросы, то где лучше всего находить на них ответы? В мануалах пока до этого доберёшься, столько времени затратишь, к тому же, неизвестно, по каким ключевым словам это искать....
Чем меньше букв, тем ёмче слово.

Оффлайн xnx

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 192
  • +0/-0
  • 0
    • Просмотр профиля
Массив
« Ответ #1 : 15 Января 2003, 22:21:40 »
in_array()

Оффлайн Макс

  • vir magni ingenii
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3534
  • +0/-0
  • 2
    • Просмотр профиля
Массив
« Ответ #2 : 15 Января 2003, 23:47:10 »
Цитировать
Когда возникают подобные вопросы, то где лучше всего находить на них ответы? В мануалах пока до этого доберёшься, столько времени затратишь, к тому же, неизвестно, по каким ключевым словам это искать....
мануал читать нужно. Сначало это будет медленно, потом освоишся, за считанные секунды ответы будеш находить.
Скачай chm-версию, там поиск очень помогает.


ЗЫ
в твоем случае логика поиска проста - тебе нужно определить есть ли элемент в МАССИВЕ, значит искать надо было в разделе Arrays (там функции не много, если английский знаеш, по названиям догадаешся что делает та или иная функция)
First learn computer science and all the theory. Next develop a programming style. Then forget all that and just hack. ( George Carrette )

Оффлайн Skyer

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 88
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Массив
« Ответ #3 : 15 Января 2003, 23:54:52 »
Макс

Цитировать
Скачай chm-версию, там поиск очень помогает.

Откуда?


Цитировать
искать надо было в разделе Arrays (там функции не много, если английский знаеш, по названиям догадаешся что делает та или иная функция)

На мой взгляд, там обалдеть сколько функций. И на каждую много примеров(и мусора). Всё это долго перелопачивать приходится.

Что касается "по названиям", то как бы я не знал английский, я бы не догадался сразу, что нужная функция - in_array, ведь значение этого "in" ооооочень обширное. Вообще, я давно хочу научиться в мануалах отгребать мусор и находить как можно быстрее инфу:)

xnx
Спасибо! Как теперь сделать, чтобы если (in_array($b, $a)), то он пишет ключ этого массива(то есть, если $b="Slava", $a[38]="Slava", то комп напишет цифру 38)?
Чем меньше букв, тем ёмче слово.

Оффлайн Макс

  • vir magni ingenii
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3534
  • +0/-0
  • 2
    • Просмотр профиля
Массив
« Ответ #4 : 16 Января 2003, 00:12:39 »
Я когда начинал писать на пхп просто открывал ман, и просматривал те разделы которые считал нужными (например разделы по Oracle, MSSQL мне пока что не нужны).
Просмтори работу с массивами, строками, датами, файлами, mysql (или с чем ты работаеш) регулярные выражения, почта.
Для начала это освой.


ЗЫ
это все ИМХО

ЗЗЫ
Цитировать
то он пишет ключ этого массива(то есть, если $b="Slava", $a[38]="Slava",
array_search()
First learn computer science and all the theory. Next develop a programming style. Then forget all that and just hack. ( George Carrette )

Оффлайн Skyer

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 88
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Массив
« Ответ #5 : 16 Января 2003, 00:27:21 »
Макс
Спасибо!
Чем меньше букв, тем ёмче слово.

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
Массив
« Ответ #6 : 16 Января 2003, 00:47:48 »
http://faq.phpclub.net/docs
ответы на все все вопросы.

Оффлайн rembo

  • Больной
  • Постоялец
  • ***
  • Сообщений: 219
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.v4.ru
Массив
« Ответ #7 : 17 Января 2003, 19:01:05 »
(Шепотом) Если названия имена не длинные можешь попробовать так:
$a["Slava"]=1;
$a["Skyer"]=1;
.....................
$a["Zadolbalsja"]=1;

$b = "koe-kto";

if ($a[$b]==1) {
}

Это конешно изврат, но часто это быстрее :)
программист должен все сделать так, чтоб потом ничего не делать

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28