Создать форум бесплатно: ixbb.ru :: Календарь на Апрель 2024 года: calendar2008.ru/2024/aprel/

  Reply to this topicStart new topicStart Poll

что это ТАКОЕ ?

meravaz
Отправлено: Aug 29 2011, 09:45 PM
Quote Post


  Генерал
*

Группа: Members
Сообщений: 266
Пользователь №: 1600
Регистрация:
22-May 08



изучаю пхп, наткнулся вот на что,
ниже приведена страница ВСЕГО 3го урока.
может хоть кто нибудь сказать русским человеческим языком о чем тут вообще речь? (((



Константы

Константы объявляются в РНР при помощи функции define():

define(CONSTANT, value)

Первый параметр этой функции – имя константы, второй – её значение. При использовании константы на неё ссылаются по имени:
CODE

   <?
      define(CONSTANT1,15);
      define(CONSTANT2,"\x20"); // код пробела
      define(CONSTANT3,"Hello");
      echo(CONSTANT1);
      echo(CONSTANT2);
      echo(CONSTANT3);
   ?>

По традиции имена констант пишут буквами верхнего регистра. И хотя это только традиция, мы Вам рекомендуем ей следовать, поскольку плохие программисты получаются в том числе и из тех, кто не следовал хорошим традициям J. Существует функция defined(), которая проверяет, определена ли константа:
CODE

   <?
      define(CONSTANT,"Hello");
      if(defined("CONSTANT"))
      {
         echo("<p>CONSTANT is defined</p>");
      }
   ?>



--------------------
PMEmail Poster
Top
Матроскин
Отправлено: Aug 30 2011, 10:30 AM
Quote Post


  Генерал
*

Группа: Members
Сообщений: 245
Пользователь №: 2581
Регистрация:
9-June 09



Тут вроде бы человеческим языком и сказано все biggrin.gif
Если говорить проще и провести аналогию, то константу можно сравнить с переменной, с той разницей, что значение переменной в работе скрипта можно менять сколько угодно. Значение же константы, установленное однажды, затем изменить нельзя (константа - постоянна).
Чаще всего константы используются для присвоения им значений всевозможных настроек... например, данные для подключения к серверу БД, имя домена, кодировка и т.д. Зачем? Ведь все это можно было бы поместить и в переменную... Ответ очевиден. Где-нибудь в скрипте, забыв, мы могли бы переназначить случайно переменную, скажем, с именем пользователя для подключения к БД... в результате мы бы долго искали причину, по которой не работает подключение БД. С константой такой ошибки не будет.
Надеюсь, объяснил доступно wink.gif


--------------------
PMEmail PosterUsers Website
Top
meravaz
Отправлено: Sep 2 2011, 08:39 PM
Quote Post


  Генерал
*

Группа: Members
Сообщений: 266
Пользователь №: 1600
Регистрация:
22-May 08



продолжаю изучать ))

есть пример, вот код
CODE
<?
$per = "мир";
echo "Здравствуй, $per!";
?>


код работает все получилось, НО есть ли у кого нить другой пример использования данного кода?
можно ли $per = "мир"; вместо слова мир поставить ссылку или что нить другое?


--------------------
PMEmail Poster
Top
meravaz
Отправлено: Sep 2 2011, 09:34 PM
Quote Post


  Генерал
*

Группа: Members
Сообщений: 266
Пользователь №: 1600
Регистрация:
22-May 08



возможно ли использование $_get в запросе? ну например
CODE
select * from table where name = $_get


вот на вот это код молчит, на ссылку index.php?sex=boy&bukva=a
выводиться чистая страница sad.gif

CODE
<?php
подключение к БД

$db = new db;
$db->query("select id from peoples where sex=$_get["sex"] and bukva=$_get["bukva"]");
while($line=$db->get_row()){
echo 'В базе всего '.$line['name'].' имен!';
}

?>


--------------------
PMEmail Poster
Top
Матроскин
Отправлено: Sep 3 2011, 10:03 AM
Quote Post


  Генерал
*

Группа: Members
Сообщений: 245
Пользователь №: 2581
Регистрация:
9-June 09



QUOTE (meravaz @ Sep 2 2011, 07:39 PM)
продолжаю изучать ))

есть пример, вот код
CODE
<?
$per = "мир";
echo "Здравствуй, $per!";
?>


код работает все получилось, НО есть ли у кого нить другой пример использования данного кода?
можно ли $per = "мир"; вместо слова мир поставить ссылку или что нить другое?

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


--------------------
PMEmail PosterUsers Website
Top
Матроскин
Отправлено: Sep 3 2011, 10:09 AM
Quote Post


  Генерал
*

Группа: Members
Сообщений: 245
Пользователь №: 2581
Регистрация:
9-June 09



QUOTE (meravaz @ Sep 2 2011, 08:34 PM)
возможно ли использование $_get в запросе? ну например
CODE
select * from table where name = $_get


вот на вот это код молчит, на ссылку index.php?sex=boy&bukva=a
выводиться чистая страница sad.gif

CODE
<?php
подключение к БД

$db = new db;
$db->query("select id from peoples where sex=$_get["sex"] and bukva=$_get["bukva"]");
while($line=$db->get_row()){
echo 'В базе всего '.$line['name'].' имен!';
}

?>

К массиву $_GET правильно обращаться в верхнем регистре:
CODE
select * from table where name = $_GET['']

Если в массиве $_GET содержатся данные строкового типа, то в запросе их нужно обрамлять одинарными кавычками:
CODE
$res = mysql_query("SELECT `id` FROM `peoples` where `sex`='" .$_GET['sex']. "' AND `bukva`='" .$_GET['bukva']. "'");


--------------------
PMEmail PosterUsers Website
Top
meravaz
Отправлено: Sep 3 2011, 12:50 PM
Quote Post


  Генерал
*

Группа: Members
Сообщений: 266
Пользователь №: 1600
Регистрация:
22-May 08



QUOTE (Матроскин @ Sep 3 2011, 10:03 AM)
В переменных можно хранить любые значения всех типов, предусмотренных в PHP.

а есть примеры какие нить? ((



--------------------
PMEmail Poster
Top
Матроскин
Отправлено: Sep 4 2011, 11:13 AM
Quote Post


  Генерал
*

Группа: Members
Сообщений: 245
Пользователь №: 2581
Регистрация:
9-June 09



Пожалуйста smile.gif
Вот наиболее часто используемые:
CODE
$num = 5; // целочисленный тип
$num_float = 3.14; // числа с плавающей точкой
$str = 'Это строка'; // строковый тип
$str2 = 'http://link.com'; // также строковый тип
$flag = TRUE; // простейший булев тип, определяющий истину или ложь, его еще называют двоичным
$flag2 = FALSE; // аналогично предыдущему

Это основные типы данных, которые можно хранить в переменных. Есть еще несколько, которые также можно условно типизировать.
Все это можно найти в любом учебнике.


--------------------
PMEmail PosterUsers Website
Top

Topic Options Reply to this topicStart new topicStart Poll

 



[ Script Execution time: 0.0202 ]   [ 10 queries used ]   [ GZIP выключен ]