채택완료

\" 은 무엇이죠? 

2022-02-02 (수) 11:58:28 2,083

echo "<a href=\"".$list[$i]['href']."\">";

"<a href=\"   ==> html 

".$list[$i]['href']."  ==> php 

\">";  ==> html

위의 것이 맞나요?

그리고 

\" 은 무엇이죠? 

|

답변 3개 / 댓글 1개

채택된 답변
+20 포인트
2022-02-02 (수) 13:05:57

일종의 구문 규칙입니다.

대개 문자열의 경우는 외따옴표나 쌍따옴표를 안 써도 괜찮습니다.

<img src=my.jpg class=you>

하지만 문자열에 띄워쓰기가 들어가면 반드시 외따옴표나 쌍따옴표 표시를 해 주어야 합니다.

<img src="my 1.jpg" class="you 1">

여기서 따옴표는 구문의 형식에 해당되는데...

따옴표를 형식이 아니라 내용에 사용할 경우엔 \ 를 써야 합니다.

아래는 예제입니다.

따옴표 없이, 외따옴표 사용시, 쌍따옴표 사용시를 능수능란하게 표현할 수 있다면 이미 많은 발전을 이룬 것입니다. 

<input value=그누보드>
<input value="그누보드">
<input value="'그누보드'">


<input id=my>
<script>
my.value = "\"그누보드\"";
</script>

BiHon 님, 비타주리 님,

답변 감사합니다. 

답변에 대한 댓글 1개

기본은 속성 사용 시 "로 감싸주는 것입니다.
생략을 해도 브라우저에서 렌더링을 해주긴 하지만 정상적인 문법은 아니죠.

+ Getting started with HTML (HTML 시작하기)
- https://developer.mozilla.org/en-US/docs/Learn/HTML/Introduction_to_HTML/Getting_started
- https://developer.mozilla.org/ko/docs/Learn/HTML/Introduction_to_HTML/Getting_started

+ JavaScript > String
- https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String
- https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/String

뭐 선택은 본인 몫이니, 이하 생략합니다.
2022-02-02 (수) 12:19:32

+ PHP Manual > Language Reference > Types  > Strings

- https://www.php.net/manual/en/language.types.string.php#language.types.string.syntax.double

echo "문자열"; // 이 문자열 부분에 "를 써야 할 때 " 앞에 \를 붙여 Escape해야 합니다.

echo "언어 "PHP", "Java" 재미있습니다."; // 오류

↓

echo "언어 \"PHP\", \"Java\" 재미있습니다."; // 정상

참고로 '를 쓸 때는 안쪽에 "를 그대로 사용할 수 있습니다.

echo '언어 "PHP", "Java" 재미있습니다.';

마찬가지로 '로 감싼 내부에서 '를 사용하려면 \'처럼 Escape 해주면 됩니다.

echo '언어 \'PHP\', \'Java\' 재미있습니다.';

* '로 감싼 문자열 내에선 해석이 일어나지 않습니다.

$lang = 'PHP';

echo "Language is {$lang}";

echo 'Language is {$lang}'; // 차이 직접 보세요.

기타 출력에 관한 부분은 위 링크의 설명 및 예제 등 참고하면 됩니다.

참고로 Arrays 쪽도 봐주면 좋습니다.

+ PHP Manual > Language Reference > Types > Arrays

- https://www.php.net/manual/en/language.types.array.php#language.types.array.donts

답변을 작성하려면 로그인이 필요합니다.