Главная » Архив материалов
Сегодня можно, наконец, снять обет молчания. И прервать сильно затянувшуюся паузу. Чем я и воспользуюсь. Проект "e;Роса"e; с осени прошлого года, как известно, выстраивался на конкретном фундаменте -- новом юридическом лице ("e;Национальный институт программирования"e;, НИП). С января 2008 г. ядро инициативной группы приступило к работе под этим "e;зонтиком"e;, который в перспективе создавал хорошие предпосылки для долгосрочного развития нашего проекта. Тем более, что с владельцами НИПа у нас поначалу не было недопонимания. После открытия сайта НИПа к апрелю мы подготовили почву для начала набора желающих присоединиться к нашему проекту. И уже при обсуждении приоритетов работ и обязательств перед участниками стали возникать внутренние трения, которые в конечном итоге привели к принципиальным разногласиям с мажоритарным акционером. В течение последних месяцев нами были предприняты попытки урегулировать конфликт интересов. Увы, безуспешно. У владельца компании ин ... Читать дальше »
Просмотров: 447 | Добавил: AdnrNick | Дата: 20.06.2016 | Комментарии (0)

Одна из часто встречающихся задач программистов - это преобразование данных из листов Excel в более пригодную форму, например в HTML или в MySQL-таблицы. Если мы при этом будем работать с электронными книгами в формате Excel, мы создадим себе настоящую проблему. К счастью, Excel и ее аналог из OpenOffice могут экспортировать данные в формат CSV (comma-separated value) - обычный текстовый формат, в котором ряд данных представлен отдельной строкой, а поля ряда разделяются запятыми. Сделать это можно прямо в Excel. Пример такого файла см. ниже, вот его и можно уже преобразовать в HTML:  "e;Airport"e;,"e;City"e;,"e;Activity"e;  "e;LON"e;,"e;London"e;,"e;Museums"e;  "e;PAR"e;,"e;Paris"e;,"e;Dining"e;  Первое, что приходит в голову, - это прочитать строки и разбить их на отдельные значения по разделителю - запятой. Но в этом случае вам нужно позаботиться о кавычках, слэшах и других особенностях этого формата. Разработч ... Читать дальше »
Просмотров: 374 | Добавил: AdnrNick | Дата: 20.06.2016 | Комментарии (0)

Рассмотрим пример записи строки в файл:  <? $file_data = "e;Hello, file. Second line."e;;  $fd = fopen( “file.txt”, “w”);  if (!$fd) {   echo "e;Error! Couldnt open/create the file."e;;    die; } fwrite ($fd, $file_data) ; fclose($fd); ?> Сценарий также выведет в файл символ новой строки, поэтому при просмотре файла на Unix-машине вы увидите следующее:  Hello, file. Second line.  Разделитель между строками называется новой строкой. В Unix и MacOS для этого используется один символ - \п, в Windows - два - \r\п («Возврат каретки, Новая строка»).  Если вам нужно позаботиться о том, чтобы файл читался на разных системах, вам нужно быть немного осторожными. Unix-файл появляется как одна большая строка в Windows, поскольку после каждой строки не будет указан символ возврата каретки.  Если вы нуждаетесь в автоматическом преобразовании символов \п в \г \п в Windows, тогда при открытии файла используйте режим wt.  Проверка существования файла  П ... Читать дальше »
Просмотров: 465 | Добавил: AdnrNick | Дата: 20.06.2016 | Комментарии (0)

<?php $file_data = “”; $fd = fopen( “file, txt”, “r”); if (!$fd) { echo "e;Error! Could not open the file."e;; die; } while (! feof($fd)) { $file_data .= fgets($fd, 5000); } fclose ($fd);  ?> Функция fopen() - это ваш первый шаг для доступа к файлу. Она работает как шлюз между файловой системой и РНР. При открытии файла вам нужно указать имя файла и желаемый режим доступа к файлу. В этом случае мы открываем файл для чтения. Вы также можете открыть файл для записи.  Функция fopen() возвращает идентификатор ресурса, который вы будете использовать в других функциях работы с файлами. В нашем примере мы будем использовать функции fgets() и feof() для работы с файлом.  Как уже было отмечено, функции fopen() нужно передать имя файла и режим доступа к файлу. Вот наиболее полезные режимы (помните, что некоторые режимы могут быть недоступны, поскольку у вас не будет достаточных прав доступа к файлу):  • r открывает файл только для чтения, чтение начинается с начала файла.  • w ... Читать дальше »
Просмотров: 449 | Добавил: AdnrNick | Дата: 20.06.2016 | Комментарии (0)

Права доступа к файлам  Чтобы вы могли выполнить какую-либо операцию с файлом, РНР должен иметь право доступа к этому файлу. На большинстве Web-серверов можно свободно читать файлы, но не всегда имеются необходимые права для их создания и изменения. Это даже хорошо, поскольку полный доступ к файловой системе позволит хакерам сделать с вашей системой все, что им заблагорассудится.  На Unix-серверах имеется три набора прав доступа к файлу: для владельца, группы и всех остальных. Пользователь, создавший файл, называется владельцем. Группа - это группа пользователей, к которой принадлежит владелец. Третий набор прав относится к остальным пользователям системы.  Защищенные серверы рассматривают РНР как непривилегированного пользователя, у которого практически нет доступа к системе. Крайне не-желательно, чтобы РНР имел полные права, поскольку на его работу могут влиять внешние пользователи. Если они найдут способ скомпрометировать РНР, они смогут повредить всю систему.  Каждый набор прав ... Читать дальше »
Просмотров: 402 | Добавил: AdnrNick | Дата: 20.06.2016 | Комментарии (0)

Подобно РНР, MySQL 5 использует формат timestamp, но не в его натуральной форме, поэтому он не совместим с форматом РНР timestamp. В MySQL есть три типа полей данных: DATE (дата), TIME (время) и DATETIME (дата и время). Также в MySQL есть специальный тип данных TIMESTAMP, который работает подобно DATETIME, но автоматически обновляется в соответствии с текущим временем при каждой вставке или обновлении записей таблицы. Существует два числовых способа представления данных в ваших запросах, но наиболее простой - это использовать строку в вашем SQL. Например, вы можете использовать 2008-09-26 как дату, а 13:23:56 как время и 2008-09-26 13:23:56 как дату и время. Для преобразования timestamp в формате РНР в формат MySQL используйте следующий код: date(“Y-m-d H:i:s”, $timestamp) Хотя вы можете сохранять PHP/UNIX timestamp как INT(IO), лучше использовать родной формат MySQL, поскольку это позволяет использовать данные независимо от РНР. Чтобы получить PHP-timestamp из запроса SELECT, испол ... Читать дальше »
Просмотров: 444 | Добавил: AdnrNick | Дата: 20.06.2016 | Комментарии (0)

Поскольку человек не понимает формат timestamp, довольно часто вам придется выводить timestamp в заданном формате, например 15 Октября 2008. Ранее мы уже использовали функцию date (), теперь рассмотрим, как она работает. Функция принимает формат даты, например “М j, Y” и timestamp, а возвращает строку. Например, datе(“М j, Y”, 1151884800) вернет Jul 2, 2006 в PST (Pacific Standard Time). Если вы не укажете timestamp, то date () будет использовать текущее время. В формате даты можно использовать дополнительные символы, например точки с запятыми и запятые, но в отличие от других функций, работающих с форматами вроде printf (), вам нужно быть предельно осторожным, чтобы не использовать зарезервированные символы форматирования Нахождение разницы между двумя датами Если вам нужно вычислить разницу между парой дат, тогда вам пригодится следующий сценарий: Функция calculate_time_dif ference () принимает три аргумента: первый timestamp, второй timestamp и единица измерения, в которой вы хо-ти ... Читать дальше »
Просмотров: 389 | Добавил: AdnrNick | Дата: 20.06.2016 | Комментарии (0)

Давайте поп порядку:1. Создание timestamps из строки Функция strtotime () иногда становится лучшим другом РНР-программистам. Как понятно из названия, функция генерирует timestamp для даты, указанной в виде фразы на английском, например April 1 или Friday. Эти строки могут быть относительной или абсолютной датой. В таблице 6.2 приведены примеры использования этой функции.Вызов Вывод (как timestamp) strtotime ("e;Friday"e;) Пятница, полночь strtotime ("e;+1 week Friday"e;) Следующая пятница (через одну), полночь strtotime ("e;+l week"e;) Неделя с текущего момента strtotime ("e; -2 months "e;) Два месяца с текущего момента назад strtotime ("e;October 1, 2008"e;) 1 октября 2008 года, полночь strtotime ("e;2008-10-01"e;) 1 октября 2008 года, полночь strtotime ("e;Friday 12:01 p.m."e;) Пятница в 12:01 РМ strtotime ('47 days 12:01 p.m."e;) 7 дней спустя В 12:01 РМХотя большинство форматов даты работают с strtotime (), н ... Читать дальше »
Просмотров: 484 | Добавил: AdnrNick | Дата: 20.06.2016 | Комментарии (0)

Возможность создавать абстрактные типы данных, позволяющая наряду с предопределенными типами данных (таки ми как integer, bool, double, string) вводить свои собственные типы данных (классы) и объявлять "e;переменные"e; таких типов данных (объекты). Создавая свои собственные типы данных, программист оперирует не машинным и терминами(переменная, функция), а объектам и реального мира, поднимаясь тем самым на новый абстрактный уровень. Растения и машины нельзя умножать друг на друга, однако низкоуровневый код запросто позволит совершить такую логическую ошибку, тогда как при использовании абстрактных типов данных такая операция становится невозможной пример:
Просмотров: 365 | Добавил: AdnrNick | Дата: 20.06.2016 | Комментарии (0)

Предыдущая заметка: RB37 (29.08.2008) Роса и НИП Оглавление Тема отечественной ОС с завидной регулярностью всплывает на поверхность и становится предметом жарких дискуссий: от "e;народных"e; интернет-форумов до самых высоких государственных инстанций, включая Госдуму. Отечественную ОС как только не называют: русская ОС, российская ОС, национальная ОС. И это неизменно вызывает спекуляции, связанные с патриотическим подтекстом. Аргументация противоборствующих лагерей сводится к информационной безопасности, к доминанте родного языка, к чистоте "e;технологической расы"e;, к наступлению на грабли родного автопрома, к очередному разбазариванию государственного финансирования… Увы, на мой взгляд, мы по обе стороны баррикад по-прежнему остаёмся в плену устойчивых стереотипов, мешающих нам непредвзято взглянуть на саму проблематику и оценить её реальную глубину. Потому хотя ранее по этому поводу писал, рискну ещё раз вернуться к данному вопросу и высказать свою позицию. Опер ... Читать дальше »
Просмотров: 406 | Добавил: AdnrNick | Дата: 20.06.2016 | Комментарии (0)

« 1 2 3 4 5 6 7 ... 11 12 »