• 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
پاراگراف جدید از php به ویندوز
#1
سلام،
میدونم عنوان تاپیکم خیلی گنگه اما باور کنید بهتر از این نتونستم بنویسم! Blush
ببینم ، مگه با \r\n توی ویندوز یه پاراگراف تازه باز نمیشه؟ پس چرا هرچی من توی تابعی از php این رو می نویسم مثل کاراکتر های دیگه باهاش برخورد می کنه؟
من میخوام از php یه متن رو بفرستم داخل فایل txt و چون ممکنه چندین بار تکرار بشه باید پاراگراف بندی بشه و هر بار یک پاراگراف تازه ایجاد بشه. درضمن من از fopen و fwrite برای خوندن و نوشتن استفاده می کنم و همینطور از a+ برای آرگومان دوم تابع fopen استفاده می کنم تا باز کنه و قابل نوشتن باشه و هر بار نوشتن کل فایل رو پاک نکنه بلکه هرچی هست نگه داره و ادامه اش بنویسه. ...
غایب
  پاسخ
تشکر شده توسط :
#2
به گیرنده خود دست نزنید ایراد از فرستنده است!
نوتپد ویندوز کارکتر های خاص رو نمی خونه
خیلی دیگه خاسته مثلا text plans باشه !
از یک ادیتور دیگه استفاده کن! مثه نوت پد ++
  پاسخ
تشکر شده توسط : parvane
#3
آخه محمد امین ، من شاید notepad++ باز کنم اما کاربرام چی؟ اونا 99% مطمئنم که با notepad باز می کنن. بالاخره باید راهی باشه! نیست؟!
غایب
  پاسخ
تشکر شده توسط :
#4
خوب چرا بجای text از یه فرمت دیگه استفاده نمی کنی؟
  پاسخ
تشکر شده توسط :
#5
کدت رو بزار
  پاسخ
تشکر شده توسط :
#6
وحید:
کد پی‌اچ‌پی:
if( !file_exists'../test.txt' ) ) {
    
$source fopen'../test.txt''x+' );
    
fwrite$source'order deny,allow\r\nallow from all\r\ndeny from 12' );
    
fclose$source );
}
else {
    
$source fopen'../test.txt''a+' );
    
fwrite$source'\r\ndeny from 12' );
    
fclose$source );


نقل قول:خوب چرا بجای text از یه فرمت دیگه استفاده نمی کنی؟
چیزی که میخوام بریزم داخلش فقط متنه و کاربر تو سیستم عاملش تنها فایلی که راحت راحت میتونه باز کنه بدون هیچ دردسری فقط فایل تکست هست.
غایب
  پاسخ
تشکر شده توسط :
#7
همین دیگه \n\r باید داخل دابل کوتیشن باشه
  پاسخ
تشکر شده توسط : cyletech Padideh
#8
راست میگویی وحید Heart مرسی.
غایب
  پاسخ
تشکر شده توسط :
#9
یعنی به این صورت ؟
کد:
fwrite( $source, "\r\ndeny from 12");

من یه سوال دارم این کتیشن و دابل کتیشن گیج کننده نیست که کجاها ازش یاسد استفاده بشه ؟ در همه جا اگه از دابل کتیشن استفاده بشه مشکلی پیش میاد ؟
  پاسخ
تشکر شده توسط :
#10
نقل قول:یعنی به این صورت ؟
بله دقیقا.

نقل قول:من یه سوال دارم این کتیشن و دابل کتیشن گیج کننده نیست که کجاها ازش یاسد استفاده بشه ؟ در همه جا اگه از دابل کتیشن استفاده بشه مشکلی پیش میاد ؟
دابل کوتیشن به موتور PHP میگه که داخلش ممکنه رشته باشه و ممکنه همراه رشته متغیر هم باشه. برای همین وقت میگذاره و از سرعت عملکرد برنامه تون می کاهه و بیشتر و بهتر تفسیرش می کنه و اگر متغیری وجود داشت مقدار اون رو جایگزین می کنه.
و اما سینگل کوتیشن دقیقاً برعکس اینه. اگر داخل سینگل کوتیشنی متغیر قرار بگیره چون موتور PHP فهمیده که داخلش فقط رشته هست و نیازی به تفسیر نداره برای همین اون متغیر هم مثل رشته نمایش میده. به مثال های زیر توجه کن:
کد پی‌اچ‌پی:
$myname 'Alireza';

echo( 
"My Name is: $myname); // khoroji> My Name is: Alireza
echo( 'My Name is: $myname' ); // khorooji> My Name is: $myname 
من بخاطر این اشتباه کردم که نمی دونستم کاراکتر هایی که ویندوز هم تفسیر می کنه (\r\n) مثل متغیر در PHP عمل می کنه.
اگر همش بخوای از دابل استفاده کنی که گفتم که ، سرعت عملکردت برنامه ات میاد پایین. فکر هم نکنم مشکل امنیتی ایجاد کنه. البته هرچیز غیر عادی ممکنه مشکل ساز بشه!
غایب
  پاسخ
تشکر شده توسط : Padideh


پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان