Кодеры подскажите

[Удален]
559

Вот такая у меня проблема, есть текстовый файл и надо удалить строка лдина которых превышает определнное количество символов, подскажите чем?

Dreammaker
На сайте с 20.04.2006
Offline
569
#1


<?

$file_name = 'file.txt'; // имя файла в той же папке, что и скрипт

$count_chars = 30; // больше сколько символов не может быть

$file = file($file_name);

foreach( $file as $value ){

if (strlen(trim($value)) <= $count_chars) {

$array[] = $value;

}

}

file_put_contents('file2.txt', $array); // записываем в файл file2.txt


?>

file_put_contents работает в пхп5 только, для пхп4 лень распиcывать.. :)

update: добавил trim для точности.. :)

[Удален]
#2

Warning: file_put_contents(3.txt) [function.file-put-contents]: failed to open stream: Permission denied in /home/freakono/domains/freakonomics.ru/public_html/1/index.php on line 19 - а вот это нормально? =)

собственно находится здесь если что

Dreammaker
На сайте с 20.04.2006
Offline
569
#3

на папку 1 сделайте права 777 на время "очистки" файла.

[Удален]
#4

Кодеры, еще одна задачка =) нужен скрипт чтоб после заданного символа в строке удалял все содержимое строки начиная от этог заданного символа вкючительно =) буду космически благодарен =) подскажите кто чем может

BasterYC
На сайте с 30.10.2007
Offline
148
#5
ньюбой:
Кодеры, еще одна задачка =) нужен скрипт чтоб после заданного символа в строке удалял все содержимое строки начиная от этог заданного символа вкючительно =) буду космически благодарен =) подскажите кто чем может

взято отсюда http://ua2.php.net/manual/ru/function.strstr.php

вообще, там в первую очередь нужно смотреть

<?php
function strstr_after($haystack, $needle, $case_insensitive = false) {
$strpos = ($case_insensitive) ? 'stripos' : 'strpos';
$pos = $strpos($haystack, $needle);
if (is_int($pos)) {
return substr($haystack, $pos + strlen($needle));
}
// Most likely false or null
return $pos;
}

// Example
$email = 'name@example.com';
$domain = strstr_after($email, '@');
echo $domain; // prints example.com
?>
R.Major
На сайте с 23.03.2008
Offline
25
#6
BasterYC:
взято отсюда http://ua2.php.net/manual/ru/function.strstr.php
вообще, там в первую очередь нужно смотреть
<?php

function strstr_after($haystack, $needle, $case_insensitive = false) {
$strpos = ($case_insensitive) ? 'stripos' : 'strpos';
$pos = $strpos($haystack, $needle);
if (is_int($pos)) {
return substr($haystack, $pos + strlen($needle));
}
// Most likely false or null
return $pos;
}

// Example
$email = 'name@example.com';
$domain = strstr_after($email, '@');
echo $domain; // prints example.com
?>

ужс

$str = substr($str, 0, strpos($str, $symbol));
Пишу на PHP (+JS) (/ru/forum/507055)
[Удален]
#7

Разобрался с помощью блокнота + экселя, спасибо.

BasterYC
На сайте с 30.10.2007
Offline
148
#8
R.Major:
ужс

$str = substr($str, 0, strpos($str, $symbol));

вообще да, я скопипастил

сам позже понял, что чересчур

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий