2015-07-10 16 views
1

Эта переменная должна работать в качестве ссылки для загрузки:Как вставить обратную косую черту в строку?

$Path = "Downloads\Quality\$c\$c $row[name].docx"; 

Но это не работает.

+0

И обертывание переменных в '{}' - '$ Path =" Downloads \ Quality \ {$ c} \ {$ c} {$ row [name]}. Docx ";'. Также избегайте escaper - '$ Path =" Downloads \\ Quality \\ $ c \\ $ c $ row [name] .docx ";' – Darren

+0

use '$ Path = urlencode (" Downloads \ Quality \ $ c \ $ c $ строки [имя] .docx ");' –

ответ

6

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

$Path = "Downloads\\Quality\\$c\\$c $row[name].docx"; 

Однако в URL-адреса, каталоги в пути должны быть разделены /, а не \. Так должно быть:

$Path = "Downloads/Quality/$c/$c $row[name].docx"; 
0

Полезной нормой является отсутствие свободного пространства в строке. При кодировании URL-адреса лучше было бы закодировать пространство (например, «% 20»), хотя предложенные двойные кавычки или функция php 'urlencode', возможно, позаботились об этом достаточно хорошо.

Смежные вопросы