PDA

View Full Version : فرق این توابع ؟!



3nitro
شنبه 26 آذر 1384, 09:42 صبح
با سلام .
یک سوال داشتم :
فرق توابع fopen و header و include و require در چیه ؟
همه اینها برای باز کردن یک صفحه (فایل) درون یک صفحه php دیگر هست ؟
چون دقیق نمی دونم اگر اینها اصلا با هم شباهتی ندارن و کلا دو تا کار جداگانه می کنند بفرمایید .
ممنون . :لبخندساده

moohssenn
شنبه 26 آذر 1384, 14:28 عصر
فکر کنم include و require و header تفاوتی ندارند اما fopen برای بازکردن یه فایل جهت نوشتنه .

pooyesh
شنبه 26 آذر 1384, 20:03 عصر
سلام
include برای باز کردن محتوای آن صفحه در صورتی که شرط صادق باشه ولی require برای وقتی است که شرط صادق باشد یا نباشد
به صورت واضح تر وقتی یک صفحه را با require وارد صفحه می کنی چه شرط (قبل از آن ) صادق باشد چه صادق نباشد آن صفحه را وارد صفحه شما می کند
به طور واضح تر یعنی اینکه اگر می خواهید شرطی (مانند if ) اجرا شود که اگر صادق بود صفحه را وارد نمایید باید از include استفاده کنید

Amir Fekrazad
یک شنبه 27 آذر 1384, 22:21 عصر
header برای فرستادن headerهای صفحه هست قبل از هر خروجی دیگر و تقریبا ربطی به بقیه توابعی که گفتی نداره.

require و include مثل هم هستند با این تفاوت که اگر require در باز کردن فایلی که بهش داده شده دچار مشکل بشه اجرای برنامه متوقف میشه ولی include چه فایل با موفقیت الحاق بشه چه نشه اسکریپت به اجراش ادامه میده.

include_once و require_once
هم همین تفاوت را دارن.

fopen فایل رو برای نوشتن، خوندن یا الصاق کردن (appenfd ) باز میکنه.

تابع read_file هم که بهش اشاره نکردی ولی در همین دسته قرار میگیره.
این تابع مثل include هست با این فرق که فایلی که باز میکنه evaluate نمیکنه. یعنی فرض کن یک فایل که محتوی کد php هست اگر با include باز کنی کدهای توش اجرا میشن ولی اگر با read_file باز کنی مثل متن معمولی باهاشون برخورد میشه.