Articles of file io

fwrite () более 2 GiB?

У меня есть набор файлов, которые я хочу объединить (каждый из них представляет собой часть из нескольких частей). Каждый разбитый файл имеет размер около 250MiB, и у меня есть переменное число из них. Моя логика конкатенации прямолинейна: if (is_resource($handle = fopen($output, 'xb')) === true) { foreach ($parts as $part) { if (is_resource($part = fopen($part, 'rb')) […]

Как передать медиафайл с помощью PHP?

Я пытаюсь создать приложение, в котором я должен передавать медиа-файлы (аудио и видео) в браузер. Я читаю файл через php и отправляю данные в браузер. Я использую следующий код. header("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1 header("Expires: Sat, 26 Jul 1997 05:00:00 GMT"); // Date in the past header("Content-Type: {$file->getMimetype()}"); header("Content-Disposition: inline; filename=".$filename.";"); header("Content-Length: ".strlen($file_content)); echo $file_content; […]

Чтение больших файлов с конца

Могу ли я прочитать файл в PHP с моего конца, например, если я хочу прочитать последние 10-20 строк? И, как я читал, если размер файла превышает 10 МБ, я начинаю получать ошибки. Как я могу предотвратить эту ошибку? Для чтения нормального файла мы используем код: if ($handle) { while (($buffer = fgets($handle, 4096)) !== false) […]

Как заставить переменные работать в Single Quotes правильно?

Я хочу, чтобы эти переменные были заполнены их значениями, но в файле config.php, написав имя самой переменной, я хочу, чтобы $ host конвертировал в 'localhost' с одинарными кавычками в файле config.php. $handle = fopen('../config.php', 'w'); fwrite($handle, ' <?php $connection = mysql_connect({$host}, {$user}, {$pass}); ?> '); fclose($handle);

как написать значение переменной с помощью file_put_contents ()?

Пытались понять это весь день, допуская его лишь небольшую ошибку ….. Я пытаюсь использовать file_put_content чтобы поместить значение переменной в другой файл php. Код ниже пояснит: Файл, который записывает данные в php: <?php require ('conf_2135432135435135412312534.php'); $F_name =$_POST['F__name']; $L_name =$_POST['L__name']; $E_mail =$_POST['Email']; $GDI_user =$_POST['GDIusername']; $ip=$_SERVER['REMOTE_ADDR']; $C_date = date("F j, Y, g:ia"); mysql_connect($hostname,$username,$password) or die(mysql_error()); mysql_select_db($dbname) or […]

Случайный выбор файла в PHP

Я хотел бы использовать ключевое слово 'include' в php для случайного выбора файла из папки и вывода содержимого. Как мне это сделать? Благодарю.

php shell_exec touch redirect и adduser

Я пытаюсь в конечном счете использовать функцию shell_exec php для создания новых пользователей Linux. Однако я столкнулся с проблемами даже при отладке. Вот мой код <?PHP function adduser($username,$password,$server){ try{ //3 debug statements $output=shell_exec("pwd"); echo $output; shell_exec("touch test.txt"); //3 debug statements are requested by Christian echo '<pre>'; print_r(execute('pwd')); print_r(execute('touch test.txt')); //actuall code $output=shell_exec("ssh root@$server \"adduser $username; […]

PHP file_exists ($ var) не работает

Я пытаюсь написать код на своем ноутбуке, и я использую среду xampp. У меня есть следующий код: class A { … foreach ($blocks as $block) { $block = 'dir/dir2/' . $block; } if (file_exists($block) == true) { $var .= file_get_contents($block); } } Когда я повторяю переменную $ block в цикле foreach, она возвращает путь к […]

PHP – удалить последний символ файла

У меня есть небольшой скрипт php, который удаляет последний символ файла. $contents = file_get_contents($path); rtrim($contents); $contents = substr($contents, 0, -1); $fh = fopen($path, 'w') or die("can't open file"); fwrite($fh, $contents); fclose($fh); Таким образом, он считывает содержимое файла, удаляет последний символ, а затем обрезает файл и записывает в него строку. Все это прекрасно работает. Мое беспокойство […]

Работа с файлами и utf8 в PHP

Допустим, у меня есть файл с именем foo.txt, закодированный в utf8: aoeu qjkx ñpyf И я хочу получить массив, который содержит все строки в этом файле (по одной строке на индекс), которые имеют буквы aoeu -pyf и только строки с этими буквами. Я написал следующий код (также закодированный как utf8): $allowed_letters=array("a","o","e","u","ñ","p","y","f"); $lines=array(); $f=fopen("foo.txt","r"); while(!feof($f)){ $line=fgets($f); […]