|
| |
|
|
| |
для: CrazyAngel
(27.10.2006 в 11:03)
| | | Надеюсь, все понятно будет. :)
<?php
//функция выводит разделительную горизонтальную полосу
function str1($sc,$sg,$br,$numid,$numname)
{
//открывающий символ
echo $sc;
//в цикле выводим нужное количество основных символов для столбца 1
for($i=0;$i<$numid+2;$i++) echo $sg;
//закрывающий и открывающий одновременно символ
echo $sc;
//снова выводим нужное количество основных символов, уже для столбца 2
for($i=0;$i<$numname+2;$i++) echo $sg;
//закрывающий символ и перевод строки
echo $sc.$br;
}
//функция выводит данные и вертикальные разделители
function str2($sv,$sp,$br,$numid,$numname,$id,$name)
{
//вычисляем количество пробелов после выводимого слова до границы столбца 1
$numspid=$numid+2-strlen($id)-1;
//вычисляем количество пробелов после выводимого слова до границы столбца 2
$numspname=$numname+2-strlen($name)-1;
//вертикальный символ, пробел и порядковый номер записи
echo $sv.$sp.$id;
//выводим в цикле нужное количество пробелов
for($i=0;$i<$numspid;$i++) echo $sp;
//вертикальный символ, пробел и нужное слово
echo $sv.$sp.$name;
//выводим в цикле нужное количество пробелов
for($i=0;$i<$numspname;$i++) echo $sp;
//вертикальный символ и перевод строки
echo $sv.$br;
}
//массив данных
$names=array("Runar","Drago","Vitek","korefan","krok-m","hin","Саня","matrix-ukr","tAleks","2plait",
"bahus","Trianon","Denis Gorby","Bogus","12345");
//основной символ горизонтальной полосы
$sg="-";
//основной символ вертикальной полосы
$sv="|";
//открывающий и закрывающий символ
$sc="+";
//символ пробела. если выводится в браузер, то заменить на
$sp=" ";
//символ перевода строки. если выводится в браузер, то заменить на <br>
$br="\n";
//название столбца 1
$col1="id";
//название столбца 2
$col2="name";
//вычисляем длину самого большого значения столбца 1
if (strlen(count($names))>strlen($col1)) $numid=strlen(count($names));
else $numid=strlen($col1);
//вычисляем длину самого большого значения столбца 2
$numname=strlen($col2);
foreach ($names as $name)
if (strlen($name)>$numname) $numname=strlen($name);
//открываем запись в буфер
ob_start();
//выводим горизонтальную полосу
str1($sc,$sg,$br,$numid,$numname);
//выводим названия столбцов
str2($sv,$sp,$br,$numid,$numname,$col1,$col2);
//выводим горизонтальную полосу
str1($sc,$sg,$br,$numid,$numname);
//прогоняя массив данных, ваводим его содержимое
foreach ($names as $key => $name)
str2($sv,$sp,$br,$numid,$numname,$key+1,$name);
//выводим горизонтальную полосу
str1($sc,$sg,$br,$numid,$numname);
//записываем содержимое буфера в переменную
$buffer=ob_get_contents();
ob_end_clean();
//записываем переменную в файл
$fp=fopen("file.txt","w");
fwrite($fp,$buffer);
fclose($fp);
?>
|
| |
| |
|
|
| |
|
|
| |
для: Drago
(24.10.2006 в 18:57)
| | | То что надо, но если не трудно объясните как оно работает))) | |
| |
|
|
| |
|
|
| |
для: CrazyAngel
(24.10.2006 в 14:34)
| | | попробуйте такой скрипт:
<?php
function str1($sc,$sg,$br,$numid,$numname)
{
echo $sc;
for($i=0;$i<$numid+2;$i++) echo $sg;
echo $sc;
for($i=0;$i<$numname+2;$i++) echo $sg;
echo $sc.$br;
}
function str2($sv,$sp,$br,$numid,$numname,$id,$name)
{
$numspid=$numid+2-strlen($id)-1;
$numspname=$numname+2-strlen($name)-1;
echo $sv.$sp.$id;
for($i=0;$i<$numspid;$i++) echo $sp;
echo $sv.$sp.$name;
for($i=0;$i<$numspname;$i++) echo $sp;
echo $sv.$br;
}
$names=array("Runar","Drago","Vitek","korefan","krok-m","hin","Саня","matrix-ukr","tAleks","2plait",
"bahus","Trianon","Denis Gorby","Bogus","12345");
$sg="-";
$sv="|";
$sc="+";
$sp=" ";
$br="\n";
$numid=strlen(count($names));
$numname=2;
foreach ($names as $name)
if (strlen($name)>$numname) $numname=strlen($name);
ob_start();
str1($sc,$sg,$br,$numid,$numname);
str2($sv,$sp,$br,$numid,$numname,"id","name");
str1($sc,$sg,$br,$numid,$numname);
foreach ($names as $key => $name)
str2($sv,$sp,$br,$numid,$numname,$key+1,$name);
str1($sc,$sg,$br,$numid,$numname);
$buffer=ob_get_contents();
ob_end_clean();
$fp=fopen("file.txt","w");
fwrite($fp,$buffer);
fclose($fp);
?>
|
| |
| |
|
|
| |
|
|
| |
для: CrazyAngel
(24.10.2006 в 14:34)
| | | Какие данные Вы собираетесь писать? | |
| |
|
|
| |
|
|
| |
для: Trianon
(24.10.2006 в 00:35)
| | | связи нет, просто охота так же красиво ровно, столбцами записывать в файл... | |
| |
|
|
| |
|
|
| |
для: CrazyAngel
(23.10.2006 в 22:17)
| | |
$meta = mysql_fetch_field($result, 'name');
$name_width = $meta->max_length;
|
| |
| |
|
|
| |
|
|
| |
для: CrazyAngel
(23.10.2006 в 22:17)
| | | Не понятна связь между таблицами и файлами? | |
| |
|
|
| |
|
|
| | ну например как в базе таблицу показывает
+----+------------+
| id | name |
+----+------------+
| 0 | CrazyAngel |
| 1 | cheops |
+----+------------+
|
| |
| |
|
| |
|