Skip to content

Instantly share code, notes, and snippets.

@aminin
aminin / Правила.md
Created August 29, 2011 19:45
Правила

Правила

Для инфраструктуры

  • Есть одна система, а не набор систем.
  • Желаемое состояние системы должно иметь численное выражение.
  • Это “численное выражение” должно быть машинно измеримым.
  • Текущее состояние системы должно само исправляться до желаемого состояния.
@aminin
aminin / create_mysql_db.sh
Last active April 18, 2018 09:33
Shell scripts for managing local websites under Apache web-server. Valid for Ubuntu 14.04.
#!/bin/bash
if [[ "$DB_NAME" == "" ]]; then
echo "Error: DB_NAME is not set"
exit 1
fi
if [[ "$DB_PASSWORD" == "" ]]; then
echo "Error: DB_PASSWORD is not set"
exit 1
fi
@aminin
aminin / README.md
Created October 20, 2011 09:50
Разворачивание проекта с помощью Phing

Использование Phing

Общие замечания

Директория с проектом на продуктовом сервере имеет следующую структуру:

<директория с проектом на сервере>

current Ссылка на ./versions/release-002

@aminin
aminin / fillData.php
Created December 25, 2011 08:05
JOIN vs SUBQUERY vs VIEW
<?php
$q[] = <<<SQL
DROP TABLE IF EXISTS interests;
DROP TABLE IF EXISTS users;
SQL;
$q[] = <<<SQL
CREATE TABLE users (
id BIGSERIAL,
@aminin
aminin / request.xml
Created December 30, 2011 11:59
PHP SoapServer ignores invalid enum value
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="test-service-namespace">
<SOAP-ENV:Body>
<ns1:TestOperation>
<ns1:firstArgument>
<!-- Wrong enum -->
<ns1:timeGroup>FooBar</ns1:timeGroup>
<!-- Good enum -->
<ns1:customerType>CHILD</ns1:customerType>
</ns1:firstArgument>
@aminin
aminin / SortOrderEnum.php
Created January 26, 2012 09:33
Enum emulation and php SoapClient
<?php
/**
* Adding this class to the classmap of SoapClient causes segmentation fault
* Not mentioned in the classmap it works fine, being (automaticly) converted to string.
*/
class SortOrderEnum
{
const CHOICE_ASCENDING = 'ASCENDING';
const CHOICE_DESCENDING = 'DESCENDING';
@aminin
aminin / Vkontakte_AdsApi.php
Created February 10, 2012 16:05
Генератор рекламного API ВКонтакте.
<?php
$naseUrl = 'http://vk.com/';
$apiDocUrl = 'http://vk.com/developers.php?o=-1&p=Ads_API';
$apiDoc = file_get_contents($apiDocUrl);
$apiDoc = iconv('windows-1251', 'utf-8', $apiDoc);
preg_match_all(
"~\<div class=\"wk_sub_header\"\>(?P<doc>.*?)\<\/div\>\s*\<ul class=\"listing\"\>(?P<methods>[\s\S]*?)\<\/ul\>~",
@aminin
aminin / checkExceptionStackTrace.php
Created March 28, 2012 14:41
Стек вызовов при пробрасывании исключений
<?php
// Этот пример демонстрирует понятие "цепочки исключений"
// Показывает сохранение стэка вызовов (stack trace) при оборачивании исключений
function a()
{
try {
b();
@aminin
aminin / Event.php
Created March 28, 2012 17:59
Пример применения докблоков
<?php
/**
* Событие с полезной нагрузкой
*
* PHP 5.3
*
* Это докблок файла.
* Если бы этого блока не было, phpDocumentor был бы недоволен.
* Здесь могла быть упомянута лицензия MIT.
*
@aminin
aminin / .gitignore
Created May 11, 2012 11:25
Vagrant box builder for ubuntu-12.04
build/
*.box
*.iso