Deerua about Coding -> Заметки с тегом «php»

Блог о кодинге, автор Deerua

coding, javascript, css, html, php, jquery, mysql, deerua

Deerua about Coding

 Избранное

 Самые комментируемые за всю историю

 175 заметок ненаглядно

 Архив за 2010, 2009, 2008  год


Страницы:     1 | 2

 24 февраля 2010, 10:25       15 дней назад

php: первый и последний в массиве %)

// значения
$first = reset($array);
$last = end($array);
// ключи
$first = reset(array_keys($array));
$last = end(array_keys($array));

 Комментировать…

 Теги: php

 21 декабря 2009, 15:49       более 2-х месяцев назад

PHP: in_string (аналог in_array)

function in_string($needle, $haystack, $insensitive = 0) {
	if ($insensitive) {
		return (false !== stristr($haystack, $needle)) ? true : false;
	} else {
		return (false !== strpos($haystack, $needle)) ? true : false;
	}
}	
Как видим, это просто stristr и strpos ;)

 Комментировать…

 Теги: php, шпаргалка

 13 декабря 2009, 14:03       более 2-х месяцев назад

Утилит полезных пост 2

Сегодня речь пойдёт о утилитах для Мускула (MySQL).
Первая это php-утилита Sypex Dumper универсальный дампер БД (сделан нашими ребятами)
  • можно просто и быстро создать резервную копию (бэкап, дамп)
  • работает очень быстро с огромными БД
  • есть куча фич (свой cmd, cron)
Вторая — javascript-утилита WWW SQL Designer — для создания структуры БД, установки связи между таблицами и всё это в удобном GUI
  • очень простая и удобная
  • установка — просто залил на сервер
  • сохранение/загрузка результатов
  • експорт в SQL и XML
  • в демке всё круто видно %)

 Комментировать…

 Теги: УПП, php, mysql, javascript, шпаргалка

 11 декабря 2009, 13:13       более 3-х месяцев назад

Утилит полезных пост

Первая это php-утилита Admiter
  • php MySQL Admin одним файлом, всегда мечтал ;)
  • умеет всё что нужно, но не такой мощный как PhpMyAdmin
Вторая это javascript-утилита DD_roundies
  • она от автора супер PNG-fix для ИЕ6
  • css-selectors для выбора применяемых элементов
  • работает очень быстро и просто, одни бонусы :)
  • умеет за одно делать прозрачными png-рисунки

 3 комментария

 Теги: php, mysql, javascript, УПП, шпаргалка

 26 ноября 2009, 23:59       более 3-х месяцев назад

Сколько баблишка?

Валюта в международном формате Возможные вариации Результат
RUR­ рублей, руб., RUR­, RUB­, rubles, р. рублей
UAH­ гривен, гр. UAH­, грн., гривен
EUR­ евро, евр., просто значок € перед или после цены, EUR­, Euro, Evro (обрабатываем опечатки) евро
USD­ значок $, USD­, долларов, у.е., зелёных :), dollar*, долар (опечатки) долларов США
<?php
/*************************************************************
* Функция определения валюты из строк вида "1000 рублей", "10 USD" и т. п.
* На входе строка, на выходе код валюты (RUR, USD, UAH, EUR)
* или false, если не удалось определить. 
* Также false выйдет если определилось несколько валют в строке.
* Автор функции - BrokenBrake.biz
*************************************************************/
function currencer($str)
{
	$pattern['RUR'] = "/[^гГuU][рРRr][Уу\.uU]/u";
	$pattern['USD'] = "/\\\$|[UuдД][sSnNоО]|[уУ][\.\s]*[еЕ]|[зЗ][еЕ]|[бБ][аА][кК][сС]/u";
	$pattern['EUR'] = "/€|[eEЕе][UuВвvV]/u";
	$pattern['UAH'] = "/[гГUu][AaрР]/u";
	
	foreach ($pattern as $key => $val)
	{
		if (preg_match($val, $str)) $currency[] = $key;
	}
	if (isset($currency[1]) OR !isset($currency[0]))return false;
	else return $currency[0];
} // echo currencer('1000 зелёных')
?>


 3 комментария

 Теги: php, шпаргалка

 6 октября 2009, 13:03       более 5-и месяцев назад

PHP: encoding detection (win1251, utf-8)

Используя иконв и мд5чексум, мы по-порядку ищем нужную нам кодировку из масива допустимых кодировочек ;) Легко и просто!
function detect_encoding($string) { 
  static $list = array('utf-8', 'windows-1251');
 
  foreach ($list as $item) {
    $sample = iconv($item, $item, $string);
    if (md5($sample) == md5($string))
      return $item;
  }
  return null;
}

 1 комментарий

 Теги: php   iconv

 8 сентября 2009, 02:12       более 6-и месяцев назад

PHP: get google.PR end yandex.QI (тИЦ)  

Стало интересно, как всякие сервисы определяют ПР и тИЦ. Тогда как с Яндексом всё предельно ясно, то для Гугла нужны не кислые танцы с бубном.

Из просмотренных мною алгоритмов для гугла, я пришёл к выводу, что большинство выдраны с виндового гугл-тулбара, и работаю с периодическим успехом на разных системах и платформах. Попытки сделать этот алгоритм универсальным не увенчались успехом, но был найден другой, отличный от всех способ, который работает везде на 100%! Дальше по-порядку:

Яндекс:
  • урл должен быть полный с хттп
  • берем иксымель с яндексбара http://bar-navig.yandex.ru/
  • получаем тИЦ
Гугль:
  • урл не важно, но лучше с хттп (вероятность бана айпи меньше)
  • вычисляем Хеш урла (алгоритм XTEA)
  • вычисляем ЧекСум урла
  • отправлям всё через сокеты, притворясь браузером на один, из многих, айпи гугла
  • нам нужны только первые 30 байт
  • ищем строчку типа «Rank_1:1:Х», где Х наш ПР
  • получаем ПР


 Комментировать…

 Теги: php, SEO, шпаргалка

 4 сентября 2009, 15:10       более 6-и месяцев назад

PHP: Как открыть большой xml(файл) для работы с php

Считать fread может небольшой файл, и зная это ограничение, мы читаем файл по 8к, пока не кончится. Дальше перекодируем и конвертируем в массив, и сразу начинаем работать ;)
$handle = fopen("http://site.com/export.xml", "rb");
$contents = '';
while (!feof($handle)) $contents .= fread($handle, 8192);
fclose($handle);
$contents = xml2array(utf8_to_cp1251($contents));
// незабываем делать unset($contents, $handle)

 Комментировать…

 Теги: php, шпаргалка

 4 сентября 2009, 15:01       более 6-и месяцев назад

PHP: utf8 to cp1251

Используя коды наших символов в утф8 и цп1251, находим последовательность операций для их превращения, и в итоге мы получаем небольшую функцию
function utf8_to_cp1251($s){
    for ($c=0;$c<strlen($s);$c++){
       $i=ord($s[$c]);
       if ($i<=127) $out.=$s[$c];
           if ($byte2){
               $new_c2=($c1&3)*64+($i&63);
               $new_c1=($c1>>2)&5;
               $new_i=$new_c1*256+$new_c2;
           if ($new_i==1025){
               $out_i=168;
           } else {
               if ($new_i==1105){
                   $out_i=184;
               } else {
                   $out_i=$new_i-848;
               }
           }
           $out.=chr($out_i);
           $byte2=false;
           }
       if (($i>>5)==6) {
           $c1=$i;
           $byte2=true;
       }
    }
    return $out;
}

 Комментировать…

 Теги: php, шпаргалка

 4 сентября 2009, 14:57       более 6-и месяцев назад

PHP: xml to array

Вкратце, по прегмачалл, с помощью регекспа, разбиваем тело на массив тегов, дальше этот массив превращаем в нужный нам, со всеми вложенностями.
function xml2array($xml) {
        $xmlary = array();
               
        $reels = '/<(\w+)\s*([^\/>]*)\s*(?:\/>|>(.*)<\/\s*\\1\s*>)/s';
        $reattrs = '/(\w+)=(?:"|\')([^"\']*)(:?"|\')/';
        preg_match_all($reels, $xml, $elements);
        foreach ($elements[1] as $ie => $xx) {
                $xmlary[$ie]["name"] = $elements[1][$ie];
               
                if ($attributes = trim($elements[2][$ie])) {
                        preg_match_all($reattrs, $attributes, $att);
                        foreach ($att[1] as $ia => $xx)
                                $xmlary[$ie]["attributes"][$att[1][$ia]] = $att[2][$ia];
                }
                $cdend = strpos($elements[3][$ie], "<");
                if ($cdend > 0) {
                        $xmlary[$ie]["text"] = substr($elements[3][$ie], 0, $cdend - 1);
                }
                if (preg_match($reels, $elements[3][$ie]))
                        $xmlary[$ie]["elements"] = xml2array($elements[3][$ie]);
                else if ($elements[3][$ie]) {
                        $xmlary[$ie]["text"] = $elements[3][$ie];
                }
        }
        return $xmlary;
}

 Комментировать…

 Теги: php, шпаргалка

Страницы:     1 | 2
Нужно создать сайт на 1С-Битрикс(Bitrix)?
Работает на движке e2 Selecta * All sources code was highlighted with w3club Highlighter.
deer.org.ua © 2008—2010 Vitaliy Bogdanets Deerua