Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Проблема с if

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (2): [1] 2 »   

> Без описания
LORDIF
Отправлено: 27 Ноября, 2010 - 20:11:39
Post Id



Частый гость


Покинул форум
Сообщений всего: 201
Дата рег-ции: Окт. 2010  


Помог: 0 раз(а)




PHP:
скопировать код в буфер обмена
  1. echo 'abc...'.if($b == 2 OR $b == 5) {echo 'cba...';}.' cba...';


Как написать такое условие, именно через echo?

(Отредактировано автором: 27 Ноября, 2010 - 20:12:05)

 
 Top
ALEN
Отправлено: 27 Ноября, 2010 - 20:14:16
Post Id



Участник


Покинул форум
Сообщений всего: 1459
Дата рег-ции: Авг. 2008  
Откуда: Крым


Помог: 11 раз(а)




LORDIF

echo 'abc...';
if($b == 2 OR $b == 5) { echo 'cba...'; }
echo ' cba...';
 
 Top
LORDIF
Отправлено: 27 Ноября, 2010 - 20:23:41
Post Id



Частый гость


Покинул форум
Сообщений всего: 201
Дата рег-ции: Окт. 2010  


Помог: 0 раз(а)




я же просил через echo, не через 2 echo а через 1
 
 Top
ALEN
Отправлено: 27 Ноября, 2010 - 20:26:35
Post Id



Участник


Покинул форум
Сообщений всего: 1459
Дата рег-ции: Авг. 2008  
Откуда: Крым


Помог: 11 раз(а)




ТОВАРИСЧ УЧИТЕ МАТ ЧАСТЬ!!!

Через одно echo можно только так:

$str='';
$str.='abc...';
if($b == 2 OR $b == 5) {$str.='cba...'; }
$str.=' cba...';
echo $str;
 
 Top
Мелкий Супермодератор
Отправлено: 27 Ноября, 2010 - 20:33:35
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


Помог: 618 раз(а)




LORDIF пишет:
я же просил через echo, не через 2 echo а через 1

А разница в чём?

PHP:
скопировать код в буфер обмена
  1. echo 'abc...',($b == 2 OR $b == 5 ? 'cba...':''),' cba...';

Можно тернарной альтернативой впихнуть.


-----
PostgreSQL DBA
 
 Top
ALEN
Отправлено: 27 Ноября, 2010 - 20:47:37
Post Id



Участник


Покинул форум
Сообщений всего: 1459
Дата рег-ции: Авг. 2008  
Откуда: Крым


Помог: 11 раз(а)




Мелкий
Можно но сугубо личное - не люблю!
 
 Top
LORDIF
Отправлено: 27 Ноября, 2010 - 20:58:20
Post Id



Частый гость


Покинул форум
Сообщений всего: 201
Дата рег-ции: Окт. 2010  


Помог: 0 раз(а)




Не могу, уже битый час мучаюсь, не могу закодировать этот фрагмент
PHP:
скопировать код в буфер обмена
  1. <?PHP $s = 'Search...';
  2. echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//RU">
  3. <html>
  4. <head>
  5. <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  6. <title></title>
  7. <link href="style.css" rel="stylesheet" type="text/css">
  8. </head>
  9. <body>';
  10. if($id == 1 OR $id == 2) {echo '<style>input, textarea {font-family:tahoma; font-size:11px; border:1px solid #B4B4B4; background:#ffffff; color:#47201F; padding-top:2px; padding-left:4px;}</style>';}
  11. echo '
  12. <table width="98%" cellpadding="0" cellspacing="0" id="main_table">
  13.  <tr>
  14.    <td width="758">
  15.         <table cellspacing="0" cellpadding="0">
  16.           <tr>
  17.    <td height="265">
  18.         <table cellpadding="0" cellspacing="0">
  19.           <tr>';
  20.                 if($id == 1 OR $id == 2) {echo "<td width=/"265/" style=/"background:url(images/bgg1.gif) bottom right no-repeat/">
  21. <form  style=/"margin:0; padding:0; /"   action=/"search.php/" id=/"form/">            
  22.                
  23. <div id=/"search/"><br>
  24. <br style=/"line-height:18px;/">
  25. <input type=/"text/" class=/"form/" value=/"enter your keywords/" onFocus=/"this.value=''/"><a href=/"#/" onClick=/"document.getElementById('form').submit()/"><img src=/"images/search.gif/" alt=/"/"></a>
  26. </div>
  27. </form>
  28.                 </td>";}
  29.                 echo '
  30.                 <td width="497">
  31.                 <table cellspacing="0" cellpadding="0">
  32.                   <tr>
  33.                         <td height="4"></td>
  34.                   </tr>
  35.                   <tr>
  36.                         <td height="71">
  37.                         <table cellspacing="0" cellpadding="0" id="menu" width="1000px" style="margin-left:2px; padding-right:13px;">
  38.                           <tr style="font-size:15px; color:#CCCCCC;"><strong>';
  39. $result_menu = $mysqli->query("SELECT title,id FROM menu LIMIT 10");
  40.               $myrow_menu = $result_menu->fetch_assoc();
  41.                           do{printf('<td width="125px"><a href="index.php?menu&id=%s" style="padding:15px 5px 0px 15px; font-size:15px; color:#CCCCCC; text-decoration:none;"><div align="left"><b>%s</b></div></a></td>',$myrow_menu["id"],$myrow_menu["title"]);}
  42.                           while($myrow_menu = $result_menu->fetch_assoc());
  43. echo '</strong>
  44.                           </tr>
  45.                         </table></td>
  46.                   </tr>
  47.                   <tr>
  48.                         <td height="6"></td>
  49.                   </tr>
  50.                   <tr>
  51.                         <td height="186" id="bg_top_right"><br>
  52. <br style="line-height:10px;"><div align="center"><a href="index.php"><img src="images/logo.png" border="0"></a></div></td>
  53.                   </tr>
  54.                 </table>                </td>
  55.           </tr>
  56.         </table>
  57.         </td>
  58.  </tr>
  59.  <tr>
  60.    <td height="425">
  61.         <table cellspacing="0" cellpadding="0">
  62.           <tr>
  63.                 <td width="29"></td>
  64.                 <td width="307" id="bg_block_left">
  65.                
  66.                
  67.                
  68. <div style="margin:22px 5px 0px 20px; padding-bottom:25px; padding-right:10px; min-width:280px;" id="news">
  69. <br>
  70.  <img src="images/tx5.gif" alt=""><br>';?>
 
 Top
OrmaJever
Отправлено: 27 Ноября, 2010 - 21:45:38
Post Id



Активный участник


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


Помог: 299 раз(а)




ALEN пишет:
Через одно echo можно только так:

$str='';
$str.='abc...';
if($b == 2 OR $b == 5) {$str.='cba...'; }
$str.=' cba...';
echo $str;

Не нужно збивать людей с толку Подмигивание


-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
ALEN
Отправлено: 27 Ноября, 2010 - 21:50:14
Post Id



Участник


Покинул форум
Сообщений всего: 1459
Дата рег-ции: Авг. 2008  
Откуда: Крым


Помог: 11 раз(а)




OrmaJever
А сам часто такое художество используешь? А еще интересней выводить горы html через echo
 
 Top
OrmaJever
Отправлено: 27 Ноября, 2010 - 22:09:13
Post Id



Активный участник


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


Помог: 299 раз(а)




ALEN пишет:
А сам часто такое художество используешь?

да. Во многих функция return с такой констукцией использую и часто в переменых.
ALEN пишет:
А еще интересней выводить горы html через echo

У меня нету html код за тегами пхп. Весь он выводится через echo. Это не на много медленее но мне так лутше читать код.


-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
ALEN
Отправлено: 27 Ноября, 2010 - 22:41:40
Post Id



Участник


Покинул форум
Сообщений всего: 1459
Дата рег-ции: Авг. 2008  
Откуда: Крым


Помог: 11 раз(а)




OrmaJever
Ну если только для себя пишешь то я еще согласен, а для работы в команде и т.д. - это категорически неправильно. Я вообще поклонник разделения программной части от визуальной.

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

А css стили вы через style="" вписываете , а события javascript по типу <div obClick="" >

Хороший тон разделять все, чтоб не только вам было понятно и удобно.
 
 Top
OrmaJever
Отправлено: 27 Ноября, 2010 - 22:57:03
Post Id



Активный участник


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


Помог: 299 раз(а)




ALEN пишет:
Ну если только для себя пишешь то я еще согласен, а для работы в команде и т.д. - это категорически неправильно.

Да я не спорю что это не очень правельно. Прочто так увидел на первых примерах и привык.


-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
ALEN
Отправлено: 27 Ноября, 2010 - 23:05:57
Post Id



Участник


Покинул форум
Сообщений всего: 1459
Дата рег-ции: Авг. 2008  
Откуда: Крым


Помог: 11 раз(а)




Ну МОЖНО многое, а НУЖНО как правильней. Для чего сразу воспринимать как выходит? Нужно делать сразу как надо.
 
 Top
Мелкий Супермодератор
Отправлено: 27 Ноября, 2010 - 23:30:09
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


Помог: 618 раз(а)




LORDIF пишет:
Не могу, уже битый час мучаюсь, не могу закодировать этот фрагмент

Экранирует не /, а \
О чём подсветка на форуме намекает.

OrmaJever пишет:
У меня нету html код за тегами пхп. Весь он выводится через echo. Это не на много медленее но мне так лутше читать код.

Таки по чистой производительности будет быстрее echo, чем между ?> и <?, т.к. второе приводится к первому. Или наоборот? В общем, не суть. На таких малых величинах это всё равно без разницы и остаётся как индивидуальные предпочтения программиста. Я предпочитаю в эхо не пихать html, мой редактор такое подсвечивает однородной строкой и кавычки удобнее использовать становится

ALEN пишет:
Можно но сугубо личное - не люблю!

Что именно? Вывод через echo или тернарную альтернативу? Подмигивание


-----
PostgreSQL DBA
 
 Top
OrmaJever
Отправлено: 27 Ноября, 2010 - 23:48:20
Post Id



Активный участник


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


Помог: 299 раз(а)




Мелкий пишет:
Таки по чистой производительности будет быстрее echo, чем между ?> и <?, т.к. второе приводится к первому. Или наоборот?

ну то что за тегами php интерпритатор сразу отбрасывает на вывод а echo он ещё и читает. Но если код между одинарными скобками то также отбрасывает на вывод и разница в скорость обработки очень мизерная.
ЗЫ. просто если какие то переменые стоят в тегах php то ректор (я юзаю php expert editop) их подсвечивает и их видно среди остального кода, а если они стоят посреди html то сложно их искать

(Отредактировано автором: 27 Ноября, 2010 - 23:49:10)



-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
Страниц (2): [1] 2 »
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Напишите за меня, пожалуйста »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB