Блог про музыку, звукозапись и код.

kPHP. Мой личный велосипед.

Posted: August 12th, 2010 | Author: kix | Filed under: IT | Tags: , , | View Comments

В порядке демонстрации своих PHP-умений, ну и просто развлечения ради – выложил свой самописный фреймворк на Github. Умеет он мало что, но основная его польза лично для меня – в том, что я знаю, как все устроено у него внутри.

По возможности все в этом фреймворке делается с помощью магии, хе-хе. То есть модель сама разбирается со своими полями, создавая их на основании полей в БД. Кроме того, в коде конкретной модели можно описывать разные дополнительные штуки типа отношений к другим моделям и типов полей. Read the rest of this entry »


Велосипедостроение

Posted: December 9th, 2009 | Author: kix | Filed under: IT | Tags: , , , , | View Comments

Поработав с разными PHP-фреймворками, я так и не смог решить, какой из них мне подходит больше всего. В каждом нашлись свои положительные стороны и недостатки. Поэтому, как ни банально, я решил написать свое решение.

Сейчас мой фреймворк еще в стадии активной разработки и почти ничего не умеет. Написаны базовые классы, начата разработка веб-интерфейса. Так что я расскажу о том, чего же я хочу добиться в результате. Read the rest of this entry »


Генератор пословиц

Posted: September 17th, 2009 | Author: kix | Filed under: Веб | Tags: , , | View Comments

Обожаю писать всякие бредогенераторы. В этот раз я написал генератор пословиц. Теперь он умеет писать в Твиттер!

И еще у него есть API :) Достаточно приписать к URL параметр “api” с любым значением, и он будет выдавать пословицы текстом без разметки. Еще один параметр – q – количество пословиц, которое надо сгенерировать. Максимум пословиц – 100, значения больше обрезаются. То есть полный запрос для генерации сорока пословиц будет выглядеть так:

http://kixlive.ru/posl/index2.php?api=1&q=40


Показываем последний твит в WordPress

Posted: June 16th, 2009 | Author: kix | Filed under: Веб | Tags: , , | View Comments

Захотелось мне, чтобы над всеми моими постами сверху отображался мой последний твит — чтобы у посетителей не было сложностей с поиском меня в Твиттере. Сделать это оказалось достаточно просто.

Тема к Вордпрессу у меня самописная, поэтому я в ней прекасно ориентируюсь. Прямо перед циклом, который выводит все мои посты, я вставил небольшой кусочек кода, найденный в Google:

<?php
require_once(ABSPATH . 'wp-includes/class-snoopy.php');
$tweet   = get_option("lasttweet");
$url  = "http://twitter.com/statuses/user_timeline/_kix.json?count=20";
if ($tweet['lastcheck'] < ( mktime() - 60 ) ) {
$snoopy = new Snoopy;
$result = $snoopy->fetch($url);
if ($result) {
$twitterdata   = json_decode($snoopy->results,true);
$i = 0;
while ($twitterdata[$i]['in_reply_to_user_id'] != '') {
$i++;
}
$pattern  = '/\@([a-zA-Z]+)/';
$replace  = '<a href="http://twitter.com/'.strtolower('\1').'">@\1</a>';
$output   = preg_replace($pattern,$replace,$twitterdata[$i]["text"]);
$tweet['lastcheck'] = mktime();
$tweet['data']    = $output;
$tweet['rawdata']  = $twitterdata;
$tweet['followers'] = $twitterdata[0]['user']['followers_count'];
update_option('lasttweet',$tweet);
} else {
echo "Twitter API not responding.";
}
} else {
$output = $tweet['data'];
}
echo "<h1 class='lasttweet'><a href='http://twitter.com/_kix'>@ </a>«".$output."»</h1>"; ?>

Собственно, код в основном весьма простой и понятный. Snoopy вытягивает нужные данные в формате JavaScript Object Notation и передает их на съедение парсеру. Потом выкидываются все ненужные данные и твит выводится в окружении тегов <h1> со стилем, который потом промисывается куда надо. Все просто!


Posted: January 29th, 2009 | Author: kix | Filed under: Без рубрики | Tags: , | View Comments

Это пер­вый урок по ос­но­вам PHP. В этой статье, на­целен­ной на но­вич­ков в PHP, мы раз­бе­рем­ся с син­такси­сом язы­ка, с ба­зовы­ми ме­тода­ми вы­вода дан­ных, пе­ремен­ны­ми и расс­мот­рим подк­лю­чение внеш­них фай­лов. Read the rest of this entry »