|
|
|
| Нужно примерно следующее:
запись типа АКУЛА = Хороший человек занести в массив типа АКУЛА => Хороший человек.
Есть функция explode но после неё при обходе этого массива функцией foreach ключи становятся начиная с 0 (тоесть значение ключей вроде как не передаётся из строки в массив.
Не подскажете, что мне делать и как мне быть?
Заранее спасибо. | |
|
|
|
|
|
|
|
для: АКУЛА
(01.04.2006 в 18:14)
| | Если в файле таких строк несколько, то можно сделать так.
<?php
$strings = file ("file.txt");
foreach ($strings as $str)
{
list ($key, $value) = explode ("=", $str);
$array[$key] = $value;
}
echo "<pre>";
print_r ($array);
echo "/<pre>";
?>
|
| |
|
|
|
|
|
|
|
для: Drago
(01.04.2006 в 18:23)
| | Что-то нифига не понял (Я начинающий прогер)
Вот мой код:
<?php
$filename = "data.txt";
if (!file_exists($filename)){
$file = fopen($filename, "a+");
}
$baza = file($filename);
foreach ($baza as $text => $textarea){
...а дальше не знаю
Не совсем понятно почему foreach ($strings as $str) тоесть не обходит вместе ключ со значением. Вроде в книге в примере так просто. | |
|
|
|
|
|
|
|
для: АКУЛА
(01.04.2006 в 20:14)
| | Вот еще пример, если не понятно :)
<?php
$string = 'Акула = хороший человек';
$strings = explode ('=',$string);
$array[$strings[0]] = $strings[1];
echo "<pre>";
print_r ($array);
echo "</pre>";
?>
|
а ключ не использовался потому, что он попросту не нужен в данном примере... потому как ключами в массиве со строками являются просто порядковые номера, которые тут нигде не принимают участие | |
|
|
|
|
|
|
|
для: АКУЛА
(01.04.2006 в 20:14)
| | Разъясняю свой код.
Пусть есть файл file.txt с таким содержимым
АКУЛА=Хороший человек
Драго=Редиска
Еще кто-нибудь=Неизвестно какой человек
|
<?php
//задаем имя файла
$file_name = "file.txt";
//если нужный файл существует, то...
if (file_exists ($file_name))
{
//заносим построчно содержимое файла в массив
$strings = file ($file_name);
//обходим массив
foreach ($strings as $str)
{
//при помощи функции list(), которой возвращается результат работы функции explode(), создаем две переменные
list ($key, $value) = explode ("=", $str);
//создаем элемент массива с ключом равным "то что было до =" и значением "то что было после ="
$array[$key] = $value;
}
//выводим массив
echo "<pre>";
print_r ($array);
echo "</pre>";
}
//если файл не существует, то так и пишем
else
echo "файл не существует";
?>
|
| |
|
|
|
|
|
|
|
для: Drago
(01.04.2006 в 21:21)
| | Сэнкс | |
|
|
|