vartem
-
Posts
23 -
Joined
-
Last visited
Content Type
Profiles
Forums
Calendar
Store
Posts posted by vartem
-
-
Ну зачем здесь эта сторонняя библиотека какая-то (интересно, кто-нибудь вообще имел дело с ней)? Функция mail() не устраивает чем-то?
-
?насч?т движка, а то я подумаю, что он даже нормально работает, и можно его всем советовать, новичкам?
Уже сказали же, что он НЕ нормально работает в ФФ, смотреть еще где-то желания нет.
-
Olga, копайте в сторону XML.
-
Я не понял причем здесь вообще array_merge()? :/ Из вопроса вижу, что надо найти расхождения в массивах, для этого используется функция array_diff().
<?
$first = (array)file('data1.txt');
$second = (array)file('data2.txt');
$arr = array_diff($first, $second);
foreach($arr as $s)
echo rtrim($s)."
n";
?> -
-
что-то ничего не работает, выскакивают ошибки и т.п. ? Firefox/2.0.0.4, в других не смотрел
А что за дизайн такой? креатив?))
-
{...} - удалено kiD
-
Yarik Voronov, да, у php были и есть проблемы с кодировками и с юникодом, в частности. Сейчас вроде ведутся работы в шестой версии: обрабатывают все функции на корректность работы с юникодом. Что получится ? увидим Но, честно говоря, эти проблемы зачастую проходили мимо меня, так что беру информацию со слухов
при генерации xml и при парсенге xml на сервере РНР не понимает другой кодировки кроме utf-8Что подразумеваете под генерацией? И что используете для генерации, парсинга?
У меня обычно при работе в php над xml идет полностью английский, а значит ? проблемы с кодировками врятли могут возникнуть. Пару раз при работе с русским и использовании SimpleXML была проблема с генерацией выходного XML. Как Вы сказали, выдавался результат в юникоде ? не смотря на то, что перед этим парсился документ с указанной кодировкой ? windows-1251 (причем, парсился он в корректной кодировке; хотя, может быть, мне показалось). Не помню как обходил проблему, первое, что сейчас приходит в голову, ? функции iconv?
-
В последней цитате, на сколько я правильно ее понимаю, речь идет не о кодировке, а о сущностях. О том, что по умолчанию они читаются в кодировке UTF, а если указать кодировку ? в указанной кодировке.
Никаких ограничений на кодировку в XML нет, кроме того, что эта кодировка должна существовать и ?быть известной? (см. http://www.iana.org/assignments/character-sets).
//добавлено
между делом, я согласен, что в XML лучше использовать UTF
-
XML согласно спецификации всегда должен быть в UTF кодировке.
Нет? http://www.rol.ru/news/it/helpdesk/xml01.htm#NT-EncodingDecl ? перевод W3C
-
Бред, слово "ваш" пишется только с маленькой. Учите русский язык.
-
Kel-Tanas, у меня такое ощущение, что мы о разных вещах. Вы говорите, как лучше применять в ?общем? случае ? причем я не раз уже соглашался с Вами; я говорю о конкретном случае, привел доводы (которые Вы почему-то переносите опять же на ?общий? случай) и никак не пойму в чем проблема ? поэтому дальнейшего желания продолжать тему у меня нет.
-
Но для массивов есть специальный цикл. Его и рекомендуется использовать.
Еще можно
reset($array);
while(list($key, $val) = each($array));Специальный цикл для массивов? Поясните, пожалуйста, правда интересно? Давайте откажемся от foreach при работе с классами, в этом случае? Или воспользуемся array_walk, чтобы совсем все усложнить, ? однако используем функцию, предназначенную именно для массивов?
Кем рекомендуется? Я не зря написал про время выполнения. Не поленился и проверил (провел тест над каталогомами, в которых более 2к файлов) ? из трех (наверное, пока) конструкциий: while( isset($names[$i++]) ), foreach($names as &$v) и while(list($key, $val) = each($array)) ? лучшую производительность показывает именно первая, самая простая конструкция.
Ведь достоверно неизвестно, какие индексы присутствуют, а какие нет.Вот если есть массив
$a = array(1=>'a', 2=>'b', 4=>'d', 5=>'e');
Вопрос на засыпку. Какие элементы этого массива переберет твой код?
Ну почему же? Достоверно известно, что результатом будет пустой массив (если ничего не нашлось) или простой индексированный массив от 0 с дальнейшим увеличением индекса на 1. Здесь я, кстати, согласен: если бы был ассоциативный (смешанный и т.п.) массив, то foreach ? лучший выбор по всем показателям. Даже приведенный массив $a обработается foreach`ом, благо ? такого не получится и while переберет все найденные имена файлов.
-
vartem, давайте, тогда уж и массив перебирать foreach-ем, а не while-ом, словно программисты каменного века.
while теперь в прошлом веке, оказывается. Мне просто, кажется, что while сработает в данном случае быстрее, хотя в современном мире, с такими мощностями, ? какая разница?
ООП пропускать не в коем случае нельзя. Надо сидеть и разбираться. Терпение и труд все перетрут.Абсолютно согласен с этим.
Kel-Tanas, куда-то нас занесло ну да ладно?
-
тип столбца notes.date текстовый (varchar и т.п.) чтоли? ? лучше так не делать
Чтобы вывести дату в таком (?12 декабря 2007?) формате, можно использовать функцию strftime, которая не везде работает.
Иначе, с помощью функции date("n", timestamp) получайте номер месяца в дате и с помощью вспомогательного массива выводите строковой эквивалент.
В частности для строки ?2007-12-12? (пусть она хранится в переменной $date, 2007 ? год, 12 (первое число) ? месяц, 12 (второе) ? день), можно воспользоваться
$a = explode("-", $date);
$year = $a[0];
$mounth = $a[1];
$day = $a[2];
$rus_m = array("января", "февраля", [и так далее]);
$a = strtotime($mounth."/".$day."/".$year);
print $day."<sup><u>е</u></sup> ".$rus_m[((int)date("n", $a))-1]." ".$year."<sup><u>го</u></sup> года";код не проверял, но должен работать?//всеже проверил
-
while(list($date, $autor, $review) = mysql_fetch_row($ath))
{
print "
<tr>
<td>$date</td>
<td> by $autor</td>
</tr>
<tr><td colspan=2>".nl2br($review)."</td>
</tr>";
}попробуй
-
Kel-Tanas, мне казалось, что данный пример остался со времен php младше версии 4.3.
Сейчас все это возможно сделать используя функцию glob, которая все найдет по ?маске? и даст результат сразу в массив. Просто хотелось, чтоб человек понял код, который привел.
$names = glob("records/rec*");
______________________________________
Добавлено:
Весь начальный код можно заменить (попробовать, во всяком случае) на
$names = glob("records/rec*");
$i = 0;
while( isset($names[$i++]) ) $names[$i-1] = substr($names[$i-1], 11); -
Кстати, говоря. Есть хорошая функция scandir(), которая, я думаю, у вас не вызовет проблем. Говорят, что она более скоростная ? заодно проверите
-
$entry = $dir_rec->read()
Откуда следует, что это чтение именно следующего файла?
Порядок считывания файлов определяется порядком их нахождение в ОС
Что вообще за оператор "->" ? Я встречал в массивах только "=>"Далее, команда read() она вообще откуда?
-> ? говорит php, что следует обратиться к методу или свойству какого-то класса. В данном случае, классом является dir, а read() метод этого класса. (формально ? это не ООП конечно)
В документации о ней я не нашел ни слова (конкретно в разделе, посвященному "dir").Внимательней надо смотреть
С условием так и не понял.. Зачем какой-то "rec"?Кто-то к чему прибавляется, при этом отсекается..
В PHP всегда такие заморочки? Нет более понятного способа считать файлы из каталога?
Для этого надо видеть код целиком. Здесь нет заморочек Есть более понятный способ ? opendir(), readdir(), closedir()?
-
$entry = $dir_rec->read()
читаем имя следующего файла/каталога в папке ?records?. Если кончилось, то получим false, именно false (то есть в коде есть маленький баг).
substr($entry,0,3)=="rec"
в переменной $entry у нас хранится имя файла/каталога. Соответственно, предыдущий код проверяет первые три символа в имени ? если это "rec", то в массив $names добавляем следующий элемент ? строка, состоящая из имени файла/каталога с отсеченными первыми тремя буквами
-
post, сокеты ? откуда? об этом никто не говорил?
Если речь о моей последней фразе, я имел в виду отправку следующих заголовков:
header("WWW-Authenticate: Basic realm="lalalala"");
header("HTTP/1.0 401 Unauthorized");и последующуя проверку по переменным:
$_SERVER['PHP_AUTH_USER'] и $_SERVER['PHP_AUTH_PW']
-
Что будет если кто-то просмотрит?
Тогда он увидит хеш логина, пароля и ip?
Кстати, по поводу ip ? какая необходимость создавать его хеш и засовывать в куки? Его можно вычислять на лету, причем ? никто не будет знать, что ты используешь эту проверку при авторизации. Однако эта проверка наносит ряд ограничений: у некоторых пользователей с каждым заходом в сеть ip меняется в пределах некоторого диапозона, а значит, проверку необходимо делать не по полному ip, а лишь по его части.
Вообще говоря, идеально безопасной авторизации не существует, особенно ? при использовании cookie. Часто рекомендуют также проверять по заголовку ?User Agent?? Если задача авторизации состоит в том, чтобы помнить авторизованного на протяжении только одной сессии работы с сайтом, то стоит задуматься о стандартных методах авторизации пользователя с помощью посылки специальных заголовков?
кодировка - проблема с русскими буквами в MySQL
in PHP
Posted
$_SERVER["PATH_INFO"] ? все, что идет после имени скрипта.
$_SERVER["QUERY_STRING"] ? все, что идет после знака вопроса в запросе GET.