PDA

View Full Version : کار دقیق تابع tempnam



morudi
چهارشنبه 18 اردیبهشت 1392, 15:04 عصر
سلام دوستان برنامه نویس میشه کار این تابع رو که در زیر نوشتم بگید و در این کد چی کار کرده

$ckfile = tempnam ("/tmp", "CURLCOOKIE")

امیـرحسین
چهارشنبه 18 اردیبهشت 1392, 16:03 عصر
توضیحش نوشته که یه فایل با اسم منحصر به فرد میسازه که میشه با اطلاعات پرش کرد و ازش استفاده کرد.
مثلا اسکریپتهایی که با نقل و انتقال فایل سر و کار دارن (آپلود مثلا) یا اسکریپتهایی که با حجم زیاد دیتا کار دارن براشون مفیده. مثلا وقتی ۱ مگابایت داده داریم بهتره بجای متغیر (مموری) داخل یه فایل موقت بریزیم و بعد از استفاده پاکش کنیم. که اونجا این تابع هلوئه. البته اختصاصا برای مثالی که زدم تابع tmpfile راححتره.

morudi
چهارشنبه 18 اردیبهشت 1392, 17:53 عصر
میشه یکم بیشتر و علمی تر توضیح بدید

امیـرحسین
چهارشنبه 18 اردیبهشت 1392, 18:14 عصر
کدوم قسمتش گنگه؟
بگو بیشتر توضیح میدم

morudi
پنج شنبه 19 اردیبهشت 1392, 09:51 صبح
برید به این ادرس
لینک (http://barnamenevis.org/showthread.php?232600-%D8%A2%D8%B4%D9%86%D8%A7%DB%8C%DB%8C-%D8%A8%D8%A7-%D8%AA%D9%88%D8%A7%D8%A8%D8%B9-cURL-%D9%88-%DA%86%D9%86%D8%AF-%D9%85%D8%AB%D8%A7%D9%84-%DA%A9%D8%A7%D8%B1%D8%A8%D8%B1%D8%AF%DB%8C)
در قسمت 4 توضیحات set 1 رو بخونید کاره دیگه ای برای این تابع نوشته
من درس سایت رسمی php درباره ی کار این تابع به این نتیجه رسیدم که:
دو پارامتر دریافت می کند اول دایرکشن فایل موقت دوم پیشوند نام فایل موقت ولی چیزی در باره کوکی نگقته بود

امیـرحسین
شنبه 21 اردیبهشت 1392, 16:38 عصر
این تابع یک فایل میسازه با یه اسم یونیک. پارامتر اول مسیر (path) این فایل رو از ما میگیره که فایل کجا ساخته شه و پارامتر دوم یک پیشوند برای اسم فایل ساخته شده.
مثلا اگر پارامتر اول رو بذارم '/a/b/c/d/'، پارامتر دوم رو CURLCOOKIE و دو بار تابع رو اجرا کنیم دو تا فایل به اسمهای مثلا a/b/c/d/CURLCOOKIE1D03.tmp و a/b/c/d/CURLCOOKIE13Y7.tmp ساخته میشه. که هــــر چیزی رو میشه توش ریخت.
(یعنی تا اینجا هیچ ربطی به کوکی نداشت ففط اسم فایل اینجوری مشخص شده)

حالا اون لینکی که دادی یکم بد ترجمه شده. اون اومده به یه صفحه فرضی request داده و کوکی‌هاش رو گرفته (که string هستن) و این کوکی‌ها رو در یک فایل موقت (همون خطی که نوشتی) ریخته (خط ۷ مسیر فایل گرفته که با محتوای کوکی پرش کنه) و در قسمت بعدی یه request دیگه داده و محتوای کوکی رو از اون فایل خونده. خط ۱۳ مسیر فایلِ پر شده گرفته تا محتواش رو به عنوان کوکی به مقصد بفرسته.