Разликата между кавички

eddy

Registered
Каква е разликата между / ' ' / и / " " / ?

Защото гледам кодове на места слагат единични на места двойни :?
 
eddy каза:
Каква е разликата между / ' ' / и / " " / ?

Защото гледам кодове на места слагат единични на места двойни :?

зависи коя за , какво се ползва , ако е за текст е препоръчително с ' ' , защото по бързо се четат и създава по малко натоварване.
 
Между двойните кавички можеш да използваш директно променливи. Пример:
Код:
$name = 'Петър';
echo 'Името ми е $name'; // Ще изведе: Името ми е $name
echo "Името ми е $name"; // Ще изведе: Името ми е Петър
Но аз предпочитам да си използвам само единичните и да си вмъквам променливите по този начин:
Код:
echo 'Името ми е '.$name; // Ще изведе: Името ми е Петър
Имай предвид, че каквито кавички използваш, не можеш да слагаш същите в израза директно. Трябва пред тях да слагаш наклонена черта. :wink:
 
Мерси :] да не отварям нова тема да ви питам още нещо.Примерно имам два масива и слагам единия масив в другия и когато дам echo $masive ми излиза съдържанието на единия масив , а пък на другия ми излиза само Array.
А пък ако използвам само echo ми излиза само array за това с foreach незнам дори защо го ползвам това foreach ама поне ми излиза полувината неща които искам.
Имали някак да се направи да излизат и 2 та.
Пример малко по ясно да ви стане, че ....

<?php
$masi=array('az','ti');

$mas=array('toi','tq','to',$masi);
foreach ($mas as $m)
{
echo $m.'<br />';
}
?>
 
Масивът се състои от ключове и стойност към всеки ключ. Ето един пример7
Код:
$masiv['id'] = 14;
$masiv['title'] = 'Заглавие';
$masiv['desc'] = 'Описание';
В този масив имаш три стойности. Ключовете ти са 'id', 'title' и 'desc' и чрез тях извикваш съответната стойност. Слагайки единия масив в другия, ти всъщност записваш масив, вместо стойност. Така че, без да посочиш кои точно стойности от вътрешния масив търсиш, php няма как да знае какво искаш и ти връща само информация, че това е масив.
Чрез foreach можеш да изведеш всички стойности на масива. В скобите се пишат две променливи - първата е масивът, а втората е нова променлива, където ще се записват стойностите на масива. Ето пример:
Код:
foreach($masiv as $value) {
 echo $value.', ';
}
// Ще изведе: 14, Заглавие, Описание,
foreach е един цикъл, който обикаля всички записи в масива. Така първият път попада на записа 14, дава тази стойност на променливата $value и се изпълнява това, което си му казал, в случая - да я изведе на екрана. Това се повтаря, докато записите в масива свършат.
Сега ще добавя друг масив в първия.
Код:
$masiv_2['visits'] = 15454;
$masiv_2['clicks'] = '125';

// сега го слагам в първия
$masiv['array'] = $masiv_2;
В този случай, когато foreach стигне до масива няма да знае коя точно стойност от него искаме и ще не изпише Array. За да видим стойностите и на другия масив трябва да направим втори foreach във първия, ето така:
Код:
foreach($masiv as $value) {
 if(is_array($value)) { // Да се изпълни, само ако е масив
  foreach($masiv_2 as $value_2) {
   echo ' - '.$value.', ';
  }
 }
 else {
  echo $value.', ';
 }
}
// Ще изведе: 14, Заглавие, Описание, - 15454, - 125
За да си представиш по-добре как точно е структуриран масива, напиши това за своя масив и ще видиш цялото му съдържание добре подредено.
Код:
<pre><?php print_r($masiv); ?></pre>
 
Само да отбележа. Какви кавички ползваш по принцип има значение в случайте, когато ползваш смесено php и html, което както Ви е известно, не е особено препоръчително. Както и да е, въпроса е, че в xhtml е хубаво да се използват единични кавички, въпреки че няма такова правило. Т.е, за да се избегнат конфликти в РНР се ползват двойни. Т.е.
Код:
print "<a href='blank.php'>Линк</a>";
Поне за мен така е по-добре. Синтактичната разлика, както казаха е само в това, че в двойни можеш да изваждаш променливи.
 
Код:
$name = 'Петър'; 
echo 'Името ми е $name'; // Ще изведе: Името ми е $name 
echo "Името ми е $name"; // Ще изведе: Името ми е Петър

Код:
$name = 'Петър'; 
echo 'Името ми е '.$name.''; // Ще изведе: Името ми е Петър 
echo "Името ми е $name"; // Ще изведе: Името ми е Петър
 

Back
Горе