سوال در مورد curl و utf8

aminbrlee

Member
با سلام خدمت شما دوستان و اساتید گرامی من یه تیکه کد دارم که بااستفاده از اون میتونم یه صفحه را بگیرم و در یه فایل ذخیره کنم ولی موقع استفاده از اون فایل یعنی وقتی inclode میکنم متاصفانه فایل به صورت unicode ذخیره نشده و خوب نمایش داده نمیشه
اینم کد
PHP:
$ch = curl_init('test.html');
$fp = fopen("zakhire.htm", "w");

curl_setopt($ch, CURLOPT_FILE, $fp);
curl_setopt($ch, CURLOPT_HEADER, 0);

curl_exec($ch);
curl_close($ch);
fclose($fp);
//....................................................
در این جا فایل  zakhire.htm را include میکنم
سوال دیگه من اینه که آیا در curl کدی وجود داره که دیگه بدونه ذخیره کردن فایل مقدار اون فایل در متغیر قرار داده بشه
منظورم اینه که مثلا در مثال بالا 'test.html' بدونه این که در zakhire.htm قرار بگیره مستقیم وارد متغیر بشه
توجه کنید دوستان که من فقط میخوام از curl استفاده کنم پس نمی خوام خارج از اونو در این سوال آخرم توضیح بدین. مثلا نگین خوب 'test.html' را include کن
با تشکر امید وارم که منظورم رو کامل رسونده باشم
 

Army.Hidden

Active Member
پاسخ

سلام دوست عزيز
اينجوري كه من متوجه شدم شما مي خوايد يك فايل رو بديد و سورس خروجي اول فايل رو توي يك متغير قرار بديد.
اگر اينجوري باشه كه من متوجه شدم شما بايد از تابع file_get_contents استفاده كنيد كه به صورت زير است.
کد:
string  [B]file_get_contents[/B]     (  string  $filename    [,  bool  $use_include_path =  false    [,  resource  $context    [,  int  $offset = -1    [,  int  $maxlen = -1   ]]]] )
مثال :
PHP:
<?php
$homepage = file_get_contents('http://www.example.com/index.htm');
echo $homepage;
?>
در مثال بالا شما محتويات خروجي فايل index.htm رو در متغير homepage$ قرار ميديد.

اطلاعاتي در مورد اين تابع توي php.net
کد:
http://ir.php.net/manual/en/function.file-get-contents.php
اگر سوالي بود بپرسيد.

موفق باشيد
 

D.A.V.O.O.D

Member
سلام
شما برای خروجی گرفتن از یک صفحه می توانی از سه راه : fsockopen و curl و file_get_contents استفاده کنی . که هر 3 قادر هستند که سورس صفحه را داخل متغیر بریزند .

روشی که دوستمون توی پست بالایی گفتند درسته ، فقط اگه دیدی توی نمایش ، مشکل یونیکد داری ، از کد زیر استفاده کن :
PHP:
@header( "Content-Type: text/html; charset=utf-8" );
 
آخرین ویرایش:

aminbrlee

Member
باسلام
آقا من این همه پست زدم که شما جواب پست خودمو بدین آقا من می خوام از curl استفاده کنم
چون که اون دوتا تابع دیگه جواب من نیستند و اصلا نمی خوام راجع به اونا بحثی بشه من فقط سوالی که کردم رو می خوام جواب بدین

و این جا هم یه سوال دیگه دارم و اون اینه که آیا fsockopen با fopen فرق داره
خواهش میکنم به سوال من در مورد curl حتما پاسخ بدین
 

D.A.V.O.O.D

Member
PHP:
@header( "Content-Type: text/html; charset=utf-8" );
$url = 'http://google.com';
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_HEADER, false);
$str = curl_exec($curl);
curl_close($curl);

echo $str;
 

aminbrlee

Member
با تشکر از شما
مشکل من هنوز حل نشده
بزارین سوالمو یه جوری دیگه بگم
فرض کنید یه آدرس داریم مانند زیر
PHP:
http://www.site.com/s.php?D=book
که وقتی ما به این آدرس می روریم متغیر d مقدار book را می گیرد و بعدش هر کاری که بخواد با این مقدار انجام می دهید حال اگه مثلا
مقدار کلمه book به جای انگلیسی فارسی باشه متاصفانه مقداری که نمایش میده اجق وجقه و کتاب رو نمایش نمیده
ممنون میشم این مشکل رو رفع کنید.
مثلا این آدرس خراب میشه
PHP:
http://www.site.com/s.php?D=کتاب
اگه طوری باشه که قبل از استفاده از مقدار متغیر اونو تغییر داد که دیگه مثلا اینجوری نمایش داده نشه ع©طھط§ط¨
 
آخرین ویرایش:

جدیدترین ارسال ها

بالا