Veszo elvalasztas PHP kodban
Itt van a kovetkezo kod:Meg tudna mondani valaki miert van veszovel elvalasztva a HTML kod a valtozoktol ? En ugy tudtam, hogy pontot (. vagy concatenatet) kell hasznalni.
Koszi
■
<?php
function template_main_above()
{
global $context, $settings, $options, $scripturl, $txt, $modSettings;
// Show right to left and the character set for ease of translating.
echo '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"', $context['right_to_left'] ? ' dir="rtl"' : '', '><head>
<meta http-equiv="Content-Type" content="text/html; charset=', $context['character_set'], '" />
<meta name="description" content="', $context['page_title'], '" />', empty($context['robot_no_index']) ? '' : '
<meta name="robots" content="noindex" />', '
<meta name="keywords" content="programare,software,dezvoltare,web,forum,baze de date,incepatori,multimedia,open source,html,css,javascript,php,perl,asp,java,c,python,ruby" />
<script type="text/javascript" src="', $settings['default_theme_url'], '/script.js?fin11"></script>
<script type="text/javascript" src="', $settings['default_theme_url'], '/bannerfade.js"></script>
<script type="text/javascript"><!-- // --><![CDATA[
var smf_theme_url = "', $settings['theme_url'], '";
var smf_images_url = "', $settings['images_url'], '";
var smf_scripturl = "', $scripturl, '";
var smf_iso_case_folding = ', $context['server']['iso_case_folding'] ? 'true' : 'false', ';
var smf_charset = "', $context['character_set'], '";
// ]]></script>
<title>', $context['page_title'], '</title>';
?>
Koszi
echo
http://hu2.php.net/manual/hu/function.echo.php
koszi!
elvileg igen
Kiváncsiságból csinátam egy fapados tesztet, hátha az egyik gyorsabb, egy for ciklusba kiirattam egy stringet így is és a "pontos" módszerrel is (5-5 mérést csináltam):
paraméterként
0.013778209686279
0.013967037200928
0.019671201705933
0.020852088928223
0.022500991821289
összefűzve
0.016287088394165
0.016954183578491
0.019642114639282
0.021274089813232
0.022562980651855
magyarul használd azt ami jólesik.. :)
Eredmény lehet ugyan az, de a lényegük más
Az echo egy nyelvi konstrukció, melynek megadhatsz (vesszővel elválasztva) több paramétert, melyeket az adott sorrendben a kimenetre küld. Itt a vessző tehát nem összefűzésre, hanem egy felsorolás elemeinek elválasztására szolgál.
Itt az echo az 'éliástóbiás' sztringet küldi a kimenetre:
---
Látom, jó sokáig szerkesztettem, közben más is megválaszolta. Bocs, csak telefonom volt közben... :)
Végrehajtás...
A példában ha ponttal lenne elválasztva, akkor előbb összefűzné a stringeket, majd kiechozná, vesszővel elválasztva minden stringet egyenként echozik ki.
Gyakorlatban semmi jelentőssége nincs.
koszi
ok koszi
pont és vessző operátor
A vessző operátor szerepel például a függvények paramétereinek megadásakor. Az echo esetén a különbség:
A vessző operátor gyorsabb, mert nem kell összefűzni a paramétereket, és nem kell plusz memóriaterületet foglalni.