PDA

View Full Version : معنی این کد چیه؟



prince4prodigy
جمعه 31 خرداد 1392, 12:24 عصر
این کد مربوط به یک cms هست :


public function display_admin(){
return <<<ADMIN_FORM
<form action="{$_SERVER['PHP_SELF']}" method="post">
<label for="title">Title:</label>
<input name="title" id="title" type="text" maxlength="150" />
<label for="bodytext">Body Text:</label>
<textarea name="bodytext" id="bodytext"></textarea>
<input type="submit" value="Create This Entry!" />
</form>
ADMIN_FORM;
}
قسمتی از کد که برای من سوال هست اینه:

return <<<ADMIN_FORM
مخصوصا این کاراکترها که پشت سر هم اومدن چه چیزی رو مشخص میکنن؟

<<<

Unique
دوشنبه 03 تیر 1392, 02:13 صبح
به این شکل نوشتن string ها میگن Heredoc که در واقع برای نوشتن string ها در چند خط کاربرد داره ! راستش مزایایی داره که توی کار مشخص میشه ! یکی زا موارد خویش اینه که دیگه نمیخواد " و ' را escape کنین و از نوشتن string چند خطی با " خیلی بهتره ! برای اطلاعات بیشتر و مثال اینجا را بخونید (http://www.php.net/manual/en/language.types.string.php#language.types.string.sy ntax.heredoc)

مثلا خیلی ها دوست دارند دستورات sql را خوانا و چند خطی بنویستند اینطوری :


$sql = <<<SQL
select *
from $tablename
where id in [$order_ids_list]
and product_name = "widgets"
SQL;

امیدوارم متوجه شده باشین.

H:Shojaei
دوشنبه 03 تیر 1392, 16:11 عصر
سلام
ببخشيد يه سوال:
اين sql بسته به محتواي كدي كه مينويسيم بايد تغيير كنه يا هر چي خواستيم ميشه بذاريم؟
اگه آره انواع كد ها رو چطور بفهميم چي بايد بنويسيم؟

Unique
سه شنبه 04 تیر 1392, 03:19 صبح
نه اصلش اینه که >>> را بعدش یک keyword بدی و در آخر هم بدون space و کاراکتری پس و پیش با ;keyword ببندیش !