Jump to content
  • 0

Показать каждый символ введ?нного слова на новой строке


Boron
 Share

Question

Всем привет!

Прошу помочь разобраться с циклом while:

В общем задача: показать каждый символ введ?нного слова на новой строке (в столбик).

Не могли бы вы подсказать почему у меня код не работает? Просто по мне, так вс? написано логично. Единственное, о ч?м подозреваю: я ошибся в синтаксисе (просто я как раз только осваиваю PHP).

В общем кто решил мне помочь и подсказать, в ч?м же я не прав, размещаю код:

<html>
<head>
<META HTTP-EQUIV="Content-type" CONTENT="text/html; charset=utf-8">
<META HTTP-EQUIV="Content-language" CONTENT="ru-RU">
</head>
<body>
<form method=POST>
<input type="text" name="name" value="<?= $_POST['name']; ?>" style="width: 200px" />
<input type="submit" name="submit" value="послать" />
</form>

<?php
$name = $_POST['name'];
$nomer = 0;

while($name)
{
$letter = substr($name, $nomer++, 1);
if($letter = $name) break;
echo $letter."
";
}
?>

</body>
</html>

Link to comment
Share on other sites

4 answers to this question

Recommended Posts

  • 0

Потомучто ты сделал что не то, цикл while работает до тех пор пока не получит false , а у тебя он либо получает все время true или false, в одном случае он не будет вообще работать а в другом он зациклится.

Это делается немного не так либо чрез функцию str_split():

 $text = 'Hello!';
$arr = str_split($text);
foreach($arr as $val) echo "$val
";

А еще можно сделать это подругому, так как строка это тоже массив то можно обращаться к ней как к массиву, т.е

$text[0] = H

$text[1] = e

поэтому делаем так

 $text = 'Hello!';
for($i=0;$i<strlen($text);$i++) echo $text[$i]."
";

Второй способ мне кажется более симпатичным, но ты можешь использовать любой

Надеюсь тебе это помогло :)

Link to comment
Share on other sites

  • 0

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

И спасибо за объяснение, почему у меня не работает while. А ведь и в правду у меня там условии к прерыванию оста?тся TRUE.

У меня вопросик такой назрел, на который я почти уверен, что ответ "НЕТ", но вс?-таки:

А в PHP нет функции инвертирования TRUE в FALSE ну и наоборот, из FALSE в TRUE?

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy