За последние 24 часа нас посетили 16894 программиста и 1291 робот. Сейчас ищут 1479 программистов ...

Сравнение переменных и их значений ($)

Тема в разделе "Вопросы от блондинок", создана пользователем Blond, 20 окт 2006.

  1. Blond

    Blond Активный пользователь

    С нами с:
    3 окт 2006
    Сообщения:
    87
    Симпатии:
    0
    Возможна ли такая запись:
    $name=name
    $name1=name
    $name=$name1.
    Имеется ввиду, что у переменной $name, такое же текстовое значение, как и у переменной $name1.
    Может я что неправильно записал. Но в общем меня интересует, возможно ли сравнивать между совой не только числовые, но и текстовые значения.
     
  2. Davil

    Davil Guest

    Blond
    1. Для текста используются кавычки.
    2. Для сравнения на равенство используются == и ===.
     
  3. Anonymous

    Anonymous Guest

    PHP:
    1. <?php
    2. $name='name'; // Присвоение, =
    3. $name1='name';  // Присвоение, =
    4. if ($name==$name1) { /*Действия*/ }  // Сравнение, ==
    5. ?>
     
  4. Петр

    Петр Активный пользователь

    С нами с:
    20 мар 2006
    Сообщения:
    1.253
    Симпатии:
    0
    Адрес:
    Центр Вселенной
    При сравнении текстовых значений надо смотреть, по какому алгоритму мы их сравниваем. Можно просто сравнить на равно-неравно, это будет выглядеть так:
    PHP:
    1. <?php
    2. if ("String_value_1" == "String_value_2")
    3.     echo "Или пхп глючит, или строки равны.";
    4. ?>
    Можно сравнивать числа и строки, в которых записаны числа.
    Тут надо смотреть, как мы их сравниваем.
    Т. е.:
    PHP:
    1. <?php
    2. if (123 == "123")
    3.     echo "Да, строка преобразовалась к числу. В данном случае так и будет.";
    4. ?>
    Но:
    PHP:
    1. <?php
    2. if (123 === "123")
    3.     echo "А здесь не происходит преведения типов. Тут мы используем строгое равенство или оператор эквивалентности.";
    4. ?>
     
  5. Blond

    Blond Активный пользователь

    С нами с:
    3 окт 2006
    Сообщения:
    87
    Симпатии:
    0
    Снк, все вродь ясно. Но на всякий случай спрошу. Регистр влияет на результат вычисления? и еще. Кроме сравнения, со строками больше никаких арифметических операций выполнять нельзя? (логически следует что нельзя, но на всяки случай уточняю)
     
  6. Davil

    Davil Guest

    Влияет.
    А кто говорил, что сравнение - это арифметическая операция?
     
  7. Anonymous

    Anonymous Guest

    Blond, можно еще конкатенацию делать. Но это тоже не арифметическая операция =)
    PHP:
    1. <?php
    2. $name = 'Олег';
    3. $surname = 'Горбунов';
    4. $info = $name . ' ' . $surname;
    5. echo $info; // Выведет: Олег Горбунов
    6. ?>
    И еще есть строковые функции
     
  8. Blond

    Blond Активный пользователь

    С нами с:
    3 окт 2006
    Сообщения:
    87
    Симпатии:
    0
    Не совсем сюда, но новый топик создавать не хотелось.
    Вот какой вопрос возник:
    Допустим есть такой скриптик
    PHP:
    1.  
    2. <?php
    3. //b.php
    4. $bu="$bu1 - $bu2";
    5. if($bu="1"){"<a href=\"bu.php\";}
    6. ?>
    7.  
    Значение переменной зависит от предыдущих действий. Тоесть, если переменная равна определенному значению, осуществляется переход к другому скрипту. Допустим
    PHP:
    1.  
    2. <?php
    3. //bu.php
    4. if($bu="1"){print "Hello";}
    5. else{print "By By";}
    6. ?>
    7.  
    А суть вопроса вот в чем: Как сделать так, что бы значение переменной $bu (или сама переменная $bu со своим значением "1") передавались в другой скрипт?
     
  9. Blond

    Blond Активный пользователь

    С нами с:
    3 окт 2006
    Сообщения:
    87
    Симпатии:
    0
    ну в смысле в скрипт bu.php
     
  10. Mavir

    Mavir Guest

    Очень интересная конструкция. Неужели это работает?
    PHP:
    1. <?php
    2. $bu="$bu1 - $bu2";
    3. if($bu="1"){<a href="bu.php\";}
    4. ?>
    5.  
    Передавай через URL <a href="bu.php?bu=<?=$bu?>"> или с помощью сессий
     
  11. Blond

    Blond Активный пользователь

    С нами с:
    3 окт 2006
    Сообщения:
    87
    Симпатии:
    0
    ясненько, снк.