PDA

View Full Version : سوال: حذف متن از فایل txt بوسیله php



hossein_crazy
پنج شنبه 19 اردیبهشت 1392, 22:30 عصر
با سلام به تمامی دوستان
مشکلی واسم پیش اومده که هرجایی گشتم چیزی ازش نبود
خوب با مثال توضیح میدم که شاید استادان عزیز مارو راهنمایی کنن

برای مثال چندین سطر متن در فایل تکست بر روی هاست دارم
matn satr aval
matn satr dovom
matn satr sevom

و نیاز هست توسط توابع php متن یکی از سطر هارو بفرستم و پیداش کنه اون سطر را حذف کنه
مثلا جمله matn satr dovom رو واسش که دادیم جمله رو پیدا کنه و پاک کنه
چنین چیزی قابل حل است ؟
با تشکر از دوستان

habibvafapour
پنج شنبه 19 اردیبهشت 1392, 22:48 عصر
دوست عزیز شما ابتدا باید کا فایل رو داخل یک متغیر بریزی . بعدش با تابع str_replace متن انتخاب شده رو حذف کنید . و در آخر دوباره متن را در فایل ذخیره کنید

hossein_crazy
جمعه 20 اردیبهشت 1392, 00:35 صبح
ممنون واسه پاسخگویی
ولی من اصلا از php سر در نمیارم
امکانش هست کمکی کنید ؟
با تشکر

MMSHFE
جمعه 20 اردیبهشت 1392, 10:42 صبح
function Remove($content) {
$file = array_map('trim', file('contents.txt'));
foreach($file as $line_number => $line_contents) {
if($line_contents == $content) {
unset($file[$line_number]);
}
}
file_put_contents('contents.txt', implode(PHP_EOL, $file));
}

morudi
جمعه 20 اردیبهشت 1392, 14:00 عصر
میشه کار تابع array_map رو بگید

MMSHFE
شنبه 21 اردیبهشت 1392, 08:48 صبح
تابع array_map دو پارامتر میگیره:
1- اسم تابعی که یک پارامتر ورودی داره و یک مقدار رو return میکنه
2- آرایه ای که باید مقادیرش یکی یکی به تابع ذکر شده در پارامتر اول داده بشه
خروجی array_map مجدداً یک آرایه است که مقادیرش، به ترتیب همون خروجیهای تابعی هست که در پارامتر اول مشخص شده. برای مثال، وقتی میگیم:

$values = array_map('trim', $_POST);
درست مثل اینه که چنین کدی نوشته باشیم:


$values = array();
foreach($_POST as $key => $value) {
$values[$key] = trim($value);
}