Giriş tipi html yankısı içinde bölü

4 Cevap php

Html görüntülenirken tüm bölü göstermek istemiyorum

Ne var olduğunu

echo "<input type=\"text\" name=\"myname\" value=\"myvalue\"";

Ne yapmak istiyorum:

echo '<input type="text" name="myname" value="myvalue">';

Ben tüm bölü yazarak kendimi kurtarmak için arıyorum. Etrafında bir yolu var mı?

4 Cevap

(Çirkin olmasına rağmen) ikinci örnek çalışır, ben bir yol çift tırnak ile HTML yazdırma sırasında değişkenleri yazdırmak için muktedir istiyorum varsayalım. Bu durum buysa, Heredoc sözdizimi kullanabilirsiniz:

echo <<<DOC
<input type="text" name="myname" value="myvalue">
DOC;

Eğer ilk etapta girdi alanları gibi baskı şeyler dolaşmak zorunda kalmamak ya da daha iyi, ama, işinizi ve sunum mantığı ayırmak için bir şablon sistemi (PHP tür olan) ya da bir MVC framework kullanabilirsiniz. :)

Muhtemelen gerçekten şeyler echo istemiyorum, ve Paolo aşağıdaki gibi oldukça iyi, ama genel olarak kesme ve tırnak işaretleri ile ilgili en iyi uygulama olduğunu açıkladı:

Eğer metinde kesme 'olduğunda, "çift tırnak içine alın

echo "foo bar 'baz'";

Çift tırnak varsa, kesme içine alın

echo 'foo bar "baz"';

Bu şekilde ters eğik çizgi ile kaplamak zorunda değilsiniz. Her iki tür varsa, Paolo örnek olarak başına yorumlu metin düşünün, ya da sadece kodun geri kalanı genellikle kullandığı stili sopa.

Her zaman kesme işareti, ya da her zaman çift tırnak - ne değişkenleri eklemek istediğiniz zaman onları yararlı olabilir takas da .. HTML yerine çift tırnak kesme kullanarak söz konusu olduğunda, her zaman aynı stil tutmak için daha faydalı olacağını olarak.

Ayrıca printf (veya sprintf), genellikle PHP programcıları tarafından unutulmuş gibi görünüyor bir fonksiyonu olabilir:

printf('<input type="text" name="myname" value="%s" />', $value);

Sizin ikinci örnek gayet güzel çalışıyor. Eğer HTML alıntı tek eğik çizgi kullanabilirsiniz istiyorsanız Ancak, bu hala geçerli çıkacaktır. Bu aynı zamanda değişkenleri alıntı sağlayacak:

echo "<input type='text' name='myname' value='$value' />";

Eğer ayrıca çizgisinde bir şey yapabilir unutmayın:

/* PHP CODE */
?>

--- HTML HERE ---
<input type="text" name="myname" value="myvalue">

<?php
/*PHP CODE */

Genellikle ben kesme ile ikinci örneği kullanın.

<?php

echo '<input type="text" name="myname" value="myvalue">';

?>

Paolo belirtildiği gibi, aynı zamanda bir MVC tabanlı bir çerçeve içine bakabilirsiniz. Hangi Model-View-Controller olduğunu. Bu sizin Fonksiyonel Kodu (Business Logic) den Görünen Kodu (Sunum Mantık) ayırmak için çok güzel bir yoldur.

İyi bir başlangıç ​​MVC Framework CodeIgniter. Bu çerçeveler nasıl işlediğini iyi bir fikir almak için onların video eğitimlerini göz atın. Orada bir öğrenme eğrisi biraz ama uzun vadede size yardımcı olacaktır!

Diğer Altyapıları ve Şablon Sistemleri:

Luck Best!

Eğer herhangi bir soru Yorum bırakmak için çekinmeyin.