[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Двойные слеши
YVSIK
/**   
* Establishes a physical path to a root directory of a script
* Устанавливает физический путь до корневой директории скрипта
*/

define('IRB_ROOT', str_replace('\\', '/', $_SERVER['DOCUMENT_ROOT']) .'/');

все вроде на своих местах,
константе 'IRB_ROOT'привязывается значение через функцию str_replace
и в самом начале есть две косые так и не понял для чего они тут, их значение

этому '/' присваивается значение $_SERVER['DOCUMENT_ROOT' и чтоб не было ошибок в дальнейшем прицепляестя .'/'
а в самом начале '\\' что это значит ?



Спустя 10 минут, 4 секунды (13.09.2011 - 18:00) caballero написал(а):
а не проще в мануале почитать что делает функция str_replace и какие у нее параметры?

Спустя 9 минут, 5 секунд (13.09.2011 - 18:09) YVSIK написал(а):
caballero
самое-то главное что несколько раз прочитал,,, и уже самже написал чИто
делает эта функция только вот тут логичнее, пример лучше к пониманию,
но так и не разобрал что значат эти двойные слеши
и в догонку так скажу, caballero если не можешь ответить что зря болтать-то
Цитата
очитать что делает функция str_replace и какие у нее параметры?

её параметры такие она меняет перый на вотрой ; вот и вопрос почему тут два параметра? и по какому она их воспринимает ?
собстнно я так понял, что там написано, и потому не разобрал sad.gif

Спустя 10 минут, 58 секунд (13.09.2011 - 18:20) caballero написал(а):
Цитата
её параметры такие она меняет перый на вотрой ; вот и вопрос почему тцт два параметра? и по какому она их воспринимает ?


Надеюсь со временем и опытом ныучишся формулировать вопрос как технарь а не как домохозяйка. Пока предположу что он должен был звучать так - почему обратные слеши меняются на прямые.
Обычно сайт на хостинга на юниксе у котрого используются прямые слеши в файловой системме. Чтобы избежать конфуза если написали в коде путь по виндовому (винда хавает по всякому) на всякий случай перебивают обратный слеш (если друг таковой имеется) на прямой

Спустя 6 минут, 30 секунд (13.09.2011 - 18:27) YVSIK написал(а):
caballero итличный ответ !!!
офтоп что сразу не мог так написать, то?
получается если есть два возможных варианта то выбирает, тот который
необходим, потому и два аргумента и любому из них подставляется,
вот и непонятка вышла у мЕнЕ сб.
ведь два же аргумента )))
а я сидел целый день въезжал sad.gif sad.gif sad.gif sad.gif sad.gif biggrin.gif biggrin.gif ХУХ !!

Спустя 2 минуты, 40 секунд (13.09.2011 - 18:29) Winston написал(а):
Попробую объяснить.
Цитата (YVSIK @ 13.09.2011 - 17:50)
str_replace('\\', '/', $_SERVER['DOCUMENT_ROOT']) .'/')

В $_SERVER['DOCUMENT_ROOT'] может хранится такой путь
Z:\home\localhost\www\

Мы с помощью str_replace заменяем обратный слеш \ на прямой /
Почему стоит 2 слеша, так это потому, что если мы оставим один слеш, он экранирует одинарную кавычку, это можно увидеть по подсветке
str_replace('\', '/', $_SERVER['DOCUMENT_ROOT']) .'/'

По сути мы экранируем обратный слеш, чтобы он не экранировал кавычку.
В итоге интерпретатор воспринимает '\\' как обычный \
И потом с помощью str_replace мы заменяем обратные на прямые слеши.
Так понятней ?



Спустя 1 минута, 58 секунд Winston написал(а):
Достаточно этого
define('IRB_ROOT', dirname(__FILE__) . '/');  

Спустя 3 минуты, 51 секунда (13.09.2011 - 18:33) YVSIK написал(а):
Winston ещё один отличный ответ!
Winston как всегда на высоте !!

Спустя 4 минуты, 53 секунды (13.09.2011 - 18:38) caballero написал(а):
Цитата
вот и непонятка вышла у мЕнЕ сб.
ведь два же аргумента )))

У тебя до сих пор непонятка - о каких ДВУХ аргументах ты говоришь?
У функции три аргумента со вполне понятным назначением.
Предполагаю опять что имееш ввиду двойной слеш.

Обратный слеш исплользуется для экранирования символов. Поэтому что бы написать просто \ его тоже нужно проектранировать потому как если например поле него будет n то получится перенос строки.
Это касается строк в двой ных кавычках. В одинаргых слеши игнорируются нго если он в конце то все равно требует ставить два - не помню почему.

"qwe\\rty" соответствует "qwe\rty"

'qwe\rty' соответствует "qwe\rty"

'qwerty\\' так надо два - с одним компилятор матерится


Спустя 31 минута, 7 секунд (13.09.2011 - 19:09) YVSIK написал(а):
Цитата
все равно требует ставить два - не помню почему.

а вот и почему?
Цитата
По сути мы экранируем обратный слеш, чтобы он не экранировал кавычку.
В итоге интерпретатор воспринимает '\\' как обычный \

а так как я не разобрал потому и вопрос задавал .

три аргумента так какой на какой меняется? (это уже для полного понимания вопроса) не очень думай что я то тупой (хоть иногда и сижу в танке-- и это не скрываю)
сказано первый меняется на второй, и по моему это ясно а тут сразу ТРИ,
вот примерно что, полный текст
<?php
$text = 'Привет, мир!';
$text = str_ireplace(', мир, 'всем', $text);
echo $text; // выведет '
Привет всем!';

вот)) и получается, два аргумента одинаковых по сути,
что в результате получается, первый меняется на второй а второй на следующий,
так что думаю не все сразу при подобном понимают что это такое написано (я собстно во главе не понимающих :D ) впрочем за всех не буду говорить, это-уже как и у кого сработает.
ладно; благодарю за полный ответ caballero

Спустя 4 минуты, 4 секунды (13.09.2011 - 19:13) Winston написал(а):
Так понятней ?
str_replace('это', 'Заменяется_на_это', 'В этом тексте');

Спустя 1 минута, 38 секунд (13.09.2011 - 19:15) caballero написал(а):
Цитата
два аргумента одинаковых по сути

Да где ж они одинаковые если там прямой слеш а там обратный

Цитата
тут сразу ТРИ


Где тут?
ты это '\\' что ли по загадочной причине называешь двумя аргументами?

Спустя 2 минуты, 46 секунд (13.09.2011 - 19:18) YVSIK написал(а):
Winston biggrin.gif biggrin.gif

Спустя 3 минуты, 43 секунды (13.09.2011 - 19:21) YVSIK написал(а):
caballero
первый === '\\',
второй === '/',
третий === $_SERVER['DOCUMENT_ROOT'
извиняй конечно, но
Winston уже ответил !!

Спустя 21 минута, 49 секунд (13.09.2011 - 19:43) twin написал(а):
Попробуй один слэш. И посмотри на подсветку кода. Прежде чем задать вопрос - эксперементируй)))))


_____________
«Гнусное свойство карликовых умов приписывать
________________!свое духовное убожество другим!»
___
О) как-же он прав=>__________________ © Оноре де Бальзак.

отличный хост(рекомендую !! )
My MVC-CMV
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.