Зачем нужны конструкции -> (Тире и знак больше) и :: (двойное двоеточие) в PHP?

Рубрика: PHP | Комментарии (4)

Если вы разбирали коды каких-либо программ, написанных на языке php, то, наверняка, вам приходилось встречать в коде вот такие спец. символы:

-> (Тире и знак больше)

:: (Двойное двоеточие)

Например, конструкции с этими выражениями могут иметь вид:

Hello:: hello_world();
q -> hello_world();

Чтобы понять, для чего нужны эти конструкции, давайте рассмотрим самый простой пример. Предположим, у нас есть простая программа «Привет мир!».

Создадим простой php-файл и напишем в нем следующий код:

Class Hello {
function hello_world () {
echo "Привет мир";
}
}

Теперь подумайте, как можно выполнить функцию hello_world().

Если бы функция hello_world() находилась бы не в классе Hello, то мы бы вызвали ее очень просто:

hello_world ();

В результате, у нас бы на экране появилась надпись «Привет мир». Но, скорее всего, если вы попытались решить задачу таким образом, у вас на экране появилась ошибка:

Fatal error: Call to undefined function hello_world() in …/test.php on line…

Все правильно, т.к. функция находиться в классе, то нужно сообщить компьютеру, что ее нужно искать именно в классе Hello. Если этого не сделать, то ничего работать не будет.

Как же образом такую информацию можно сообщить компьютеру?

Здесь есть несколько вариантов. Давайте рассмотрим каждый в отдельности.

1 вариант. Через создание экземпляра класса.

$q = new Hello;

Этой строкой мы создаем так называемый экземпляр класса Hello. После этой операции, мы можем свободно обращаться к нужной нам функции через этот экземпляр, который в данном случае хранится в переменной $q.

$q -> hello_world();

Связующим звеном между экземпляром класса и функцией становится конструкция «->».

Теперь все работает. Ура! Вы должны увидеть на экране надпись «Привет мир».

2 вариант.  Использование конструкции двойное двоеточие ::

Этот вариант еще намного проще. Здесь даже не нужно создавать никаких экземпляров. Просто пишем.

Hello::hello_world();

Можете проверить, функция успешно будет выполнена.

Надеюсь, что после прочтения этой заметки, Вы теперь поняли, что «->» и «::» используются для доступа к нужной функции в созданном классе.

С помощью этих же конструкций мы можем обращаться и к переменным, которые находятся в классах. Единственное отличие в том, что в конце не нужно ставить скобочки. Например:

Hello::world;

Этой конструкцией мы обращаемся к переменной world, которая находиться в классе Hello.

Особенно часто подобные конструкции можно встретить при разборе кода различных систем управления сайтов. Посмотрите исходный код таких систем как Joomla, WordPress и.т.д. Теперь вы знаете для чего это все нужно.

Удачи!

Как узнать позиции сайта по определенным запросам в поисковых системах.

Рубрика: Раскрутка сайтов | Комментарии (12)

При раскрутке вашего сайта очень важно отслеживать позиции, которые занимает ваш сайт и конкретные его страницы в выдачи поисковых систем.

Допустим, вы решили продвинуться по определенному запросу, если вы не будете знать какое место в выдаче поисковых систем будет занимать ваша страница, то вы не сможете определить, насколько успешны были ваши действия по раскрутке.

Конечно, есть вариант, что вы будете вручную открывать сайты поисковых систем и пролистывая сотни страниц в день, определять эти самые страницы. Лично для меня, совершенно не допустимо, терять такое огромное количество времени и сил.

Сегодня мне бы хотелось представить вам одно из решений, которое может помочь вам быстро и удобно определять позиции сайта по нужным вам запросам. Самое главное, что сделать вы это сможете совершенно бесплатно.

Итак, способ, который я вам хочу сегодня представить, заключается в использовании специального сервиса, который называется MegaIndex.

Давайте пойдем по шагам, что нужно сделать, чтобы начать получать важные для нас данные.

Шаг 1. Чтобы начать пользоваться сервисом, в нем нужно зарегистрироваться. Сделайте это прямо сейчас, пройдя по следующей ссылке.

Зарегистрироваться в MegaIndex. (ссылка открывается в новом окне)

Кликните по кнопке «Регистрация» и введите свои персональные данные. Процедура регистрации самая обычная, поэтому на ней я останавливаться не буду.

Шаг 2. После регистрации вы получите доступ в панель управления.

Пройдите во вкладку «Результаты поиска», подменю «Мои сайты» и добавьте домен своего сайта.

Шаг 3. Выполнив два предыдущих шага, вы получаете доступ к специальной таблице, с которой мы с вами и будем работать.

В колонке «Автоматическое продвижение» кликните по ссылке «Запросы».

Шаг 4. Добавьте нужные запросы, по которым вы хотели бы отслеживать позиции с помощью специального поля «Добавить запросы».

После этого, у вас сформируется табличка, в которой вы можете наблюдать, какое место в поисковой выдачи Яндекс или Google занимает ваш сайт.

Шаг 5. Для того, чтобы увидеть как эта позиция менялась с течением времени, вы можете кликнуть по ссылке «История позиций».

На этом на сегодня все. Хороших вам показателей в выдачи поисковых систем!

HTML тег label назначение и применение.

Рубрика: HTML | Комментарии (3)

При работе с веб-формами, скорее всего, вы видели, что рядом практически с каждым элементом находится определенный текст, который поясняет назначение этого элемента.

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

<input type="checkbox" checked="checked"> Первый
<input type="checkbox" checked="checked"> Второй
<input type="checkbox" checked="checked"> Третий

Так делать можно и форма будет рабочей. Но попробуйте кликнуть в такой форме по тексту «Первый». У вас ничего не произойдет, т.к. это обычный текст. А хотелось бы, чтобы при клике по этому тексту, активировался соответствующий переключатель в форме.

Удобные формы так и делаются: пользователь кликает по какому-то тексту в форме и при этом активируется соответствующий элемент веб-формы.

Как добиться такого эффекта?

Специально для таких целей использует специальный тег label – текстовая метка. Это парный тег, в котором содержится текстовая информация, которая относится к тому или иному элементу веб-формы. Обратите внимание, что тег label обязательно должен закрываться </label>.

Например, предыдущий пример, если использовать элемент label преобразиться следующим образом:

<input type="checkbox" checked="checked"> <label> Первый </label>
<input type="checkbox" checked="checked"> <label> Второй </label>
<input type="checkbox" checked="checked"> <label> Третий </label>

Многие люди, при создании веб-форм, создают в своих формах эти текстовые метки не по их прямому назначению. Теги label создаются рядом с каким-либо элементом лишь для того, чтобы поместить текстовое описание для этого элемента.

На самом деле, основная задача этого тега именно связать текстовую информацию с соответствующим элементом веб-формы.

Если вы сейчас кликните по тексту рядом с переключателем, то обнаружите, что должного эффекта так и нет.

Как же это исправить?

На самом деле, у тега label есть два очень важных атрибута:

1) for – позволяет установить связь тега label с элементом веб-формы, у которого задан определенный id.

2) accesskey – позволяет назначить доступ к элементу веб-формы с помощью горячих клавиш.

Давайте сначала посмотрим пример использования атрибута for. Общий принцип его использования в следующем: элементу присваивается атрибут id c определенным значением, после чего в теге label нужно создать атрибут for со значением id того элемента, с которым этот labеl нужно связать.

<input id="значение"><label for="точно такое же значение, как у id">
Текст</label>

Применительно к нашему примеру это будет выглядеть вот так:

<input type="checkbox" checked="checked"> <label for="check1">
Первый </label>
<input type="checkbox" checked="checked"> <label for="check2">
Второй </label>
<input type="checkbox" checked="checked"> <label for="check3">
Третий </label>

Кликая по тексту, будет активироваться соответствующий переключатель. Можете попробовать.

Теперь давайте поговорим о втором атрибуте accesskey.

Этот атрибут может принимать цифровое значение (0-9) или значение из латинской буквы от a до z.

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

<input type="checkbox" checked="checked"> <label  accesskey="k"
for="check1"> Первый </label>

Открыв эту страницу в браузере Mozilla Firefox и нажав сочетание клавиш Shift + Alt + k, вы можете наблюдать, что checkbox начнет переходить из активного в неактивное состояние.

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

Это все, что я хотел рассказать о теге label, как видите, казалось бы, самый простой элемент, скрывает в себе интересные возможности.

Страница 2 из 36123102030...К последней »