что то ищешь тут паря?

суббота, 23 февраля 2013 г.

просто золотая статья по созданию MVC фреймворка!

http://habrahabr.ru/post/150267/

и еще вот эта.теперь я думаю нада создавать приложение то что я хотел на нокауте!

http://habrahabr.ru/post/151219/



пятница, 22 февраля 2013 г.

Теперь приколы по пхп от другог учителя))))

$array = [
'color' => 'green',
'amount' => 10,
];

foreach ($array as $key => $value) {
// key => color, value => green
// $color = green
$$key = $value;
}

такой вот пример чтоб в итоге получить переменные с именем которое равно имени ключа
а значением которое равно значению)))
идем дальше

foreach ($array as $key => &$value){
// $model = 'BMW';
// $model1 = &$model;
// $model1 = 'Lexus';
// $value = &$array[$key];
// $value = 'asdasdasd';
// $key = 'color', &$value =>
$value = strtoupper($value);
// echo $array['color'] . '-' . $value;
}
вообще цикл форич перебирает копию массива
НО ТУТ ОН ПЕРЕБИВАЕТ ЯЧЕЙКИ ПАМЯТИ МАССИВА В КОТОРЫХ НАХОДЯТСЯ ПЕРЕМЕННЫЕ.такой пример интересный.


ВОт собственно говоря сегодня прошли рекурсивную функцию

$array = [1,2,3,[77,88,99,[111,222,333]]];

function printArray($array){

$result = '';

foreach ($array as $value) {

if (is_array($value))
{
$result .= printArray($value);
}
else
{
$result .= $value . '<br>';
}
}

return $result;

}

echo printArray($array);

вот она такая тут)

А вот вам пожалуйста и анонимная функция

$array = [1,2,3,4,5];

$cube = array_map(function($item){
return $item * $item;
}, $array);


так называемый коллбек(callback)


а вот мы сами написали функцию array_map

$array = [
'color' => 'red',
'count' => 10,
];

function my_array_map(callable $func, array $array)
{
$arr = [];

foreach ($array as $key => $value) {
$arr[$key] = $func($key, $value);
}

return $arr;
}

кроме того мы указали что передается в переменной  $func именно функция
и именно второй передается массив!

function getArchiver($os, $archive_name)
{
echo $archive_name;

if ($os === 'windows')
{
return function(){
echo 'WINRAR';
};
}
else if ($os === 'linux')
{
return function($archive_name) use($archive_name) {
echo 'TAT.GZ';
echo $archive_name;
};
}
}


а тут мы показали как передавать функции переменные из
локальной области видимости другой функции)))



function getArchiver($os, $archive_name)
{
echo $archive_name;

if ($os === 'windows')
{
return function(){
echo 'WINRAR';
};
}
else if ($os === 'linux')
{
return function($archive_name) use($archive_name) {
echo 'TAT.GZ';
echo $archive_name;
};
}
}


вот такой вот урок был.буду домашку делать на выходных)

Теперь по пхп.

уже 5 занятий.вообще планирую разработать свой фреймворк.параллельно буду учить фреймворк lavarel.должна быть очень жирная тема)))

Теперь касательно занятий.ньюансы:
Понеслась:
$n=count ($w);
считает количество елементов в массиве))))
 $dir=scandir('../add/dif_img'); заносит все что в директории в массив
fun2();
// ESLI MI HOTIM PODAVIT WARNING O MI SAVIM @
тоесть функция может принимать пустое значение но выкинет варнинг.

// range(4,7) pechatae massiv chisel ot 4 do 7
$c=range(4,7);

$c = array_combine($a, $b); склеивает массивы

echo('<br>c='.key($c).'='.current($c));
// тоесть счас указатель массива стоит вначале (как бы в начале стека)
// чтоб передвинуть дальше указатель вниз по массиву нужно сделать next
next($c);
echo('<br>c='.key($c).'='.current($c));
end($c);//переводит указатель в конец массива
echo('<br>c='.key($c).'='.current($c));
prev($c);
echo('<br>c='.key($c).'='.current($c));
reset($c);
echo('<br>c='.key($c).'='.current($c));

for (reset($c);current($c);next($c))
//вместо i получаем перво условие типа сбросить(и=0) потом типа условие
//(i<10 а у нас каррент от с(
//ну типа если $c фолс(а если доходит нкст до кнца массива то последнее некст равно фолс потому как нет дальше ячейки))
//ну и третье устовие это инкремент от и (а в нашем у\случае переходи к следующй ячейке массива))

{
echo('<br>'.key($c).'='.current($c));

}

for (end($c);current($c);prev($c)) //ЕСЛИ перебирать обратно то вместо reset end!!!!!
{
echo('<br>'.key($c).'='.current($c));

}

echo('<br>'.key($c).'='.current($c));//ТУТ НИЧЕГО НЕ БУДЕТ!!!!ПОТОМУ ЧТО УКАЗАТЕЛЬ ВЫЛЕТЛ С МАССИВА.и чтоб вернуть его нужно делать
// reset!!!!!!!он вылетает и вниз и вверх!!!!!и потом как бы его нет.нужно или енд или резет
reset($c);
echo('<br>'.key($c).'='.current($c));
$each_lesson=each($c);
pr($each_lesson,'each');
//Возвращает текущую пару ключ/значение из массива array.
// Данная пара возвращается в массива из четырех элементов, с ключами 0, 1,
//key и value. Элементы 0 и key содержат имя ключа элемента массива, а 1 и value содержат его данные.
//Если внутренний указатель массива указывает за его пределы, each() возвратит FALSE.


// LIST
list($a1,$a2,$a3)=$a;
echo "$a1,$a2,$a3<br>";
//Подобно array(), это не функция, а языковая конструкция. list() используется для того, чтобы присвоить списку
//переменных значения за одну операцию.
list(,$a1,$a2,$a3)=$a;//можно запятыми отодвинуть елементы в лис который заносятся
echo "$a1,$a2,$a3<br>";

reset($c);
while (list($k,$v)=each($c)) { //ВОТ ЄТО АНАЛОГ foreach НО foreach работает с копией массива и потому му не нада reset
// а тут НАДА!
echo("<br>$k=$v");
}


вот такая еще конструкция.



*еще раз про функцию стрипос*/
$f="film.dvd.avi";
$n=strripos($f, '.');/*НЬЮАНС СТРИПОС ИЩЕТ СНАЧАЛА А СТРРИПОС ИЩЕТ СКОНЦА!!!(р = РАЙТ) ТАК ЧТО ОН НАМ ВЕРНТ ФАЙЛ БЕЗ РАСШИРЕНИЯ*/
$name=substr($f, 0,$n);
echo "$name";

/*ЕСЛИ ЖЕ НАС ИНТЕРСУЕТ ТОЛЬКО РАСШИРНИ ФАЙЛА ТО НАМ НУЖНА ФУНКЦИЯ КОТОРАЯ ВЫДАЕТ ПОДСТРОКУ С КОНЦА ЭТО strrchr*/
$ext=strrchr($f, '.');
pr($ext);

$f="xxx@ukr.net";
$ext=strstr($f, '@');
pr($ext);

$p=range(21, 39);//функция для бістрого забивания массива числами
pr($p);


$file=file_get_contents($path); берет весь файл и записвает его одной строкой

$search_tag_begin="<".$tagname;
$n1=stripos($file, $search_tag_begin);
$search_tag_end="</".$tagname;
$n2=stripos($file, $search_tag_end);
$searched_text=substr($file, $n1,$n2-$n1);
echo "$searched_text";
/*string strip_tags ( string $str [, string $allowable_tags ] )
Ýòà ôóíêöèÿ ïûòàåòñÿ âîçâðàòèòü ñòðîêó str, èç êîòîðîé óäàëåíû âñå NUL-áàéòû,
HTML è PHP òåãè. Äëÿ óäàëåíèÿ òåãîâ èñïîëüçóåòñÿ òîò æå àâòîìàò, ÷òî è â ôóíêöèè fgetss(). */
$stripped_text=strip_tags(substr($file, $n1,$n2-$n1));
return $stripped_text;



}


$stripped_text2=findtag($path,'h2')



а это функция по експорту из цсв

function prtable($file)
{
if (!file_exists($file)) {
return false;
}
$file_massive=file($file);
echo("<table border=1 cellpadding=14>");
foreach ($file_massive as $row) {
echo "<tr>";
$data=explode(';',$row);
foreach ($data as $cell) {
echo("<td>$cell</td>");
}
}

echo "</table>";




}



Ну что ж мой дневничок.вот я опять начнал писаьт в тебя)))пИсать)))ахах

ИтаГ.что происходит на данный момент.
Обливания:да.регулярно
Зарядка:забил уже полторы недели не тягаю штангу.НУЖНО СРОЧНО НАЧАТЬ ТЯГАТЬ прям с сегодняшнего дня.вообще конечно более ли менее привел себя в форму а счас опять запустил.
Питание:жру.одним словом.особено вот эти полторы недели.когда не качаюсь.плохо.
хотя стараюсь на ноч не жрать так как будет плохо.
Развитие:ходил в клуб риторики.на этих выходных тоже пойду.
на занятия по риторике не пошел.посчитал что это уже мне не нужно.
записался параллельно на 2 курса программирования на пхп.одно удаленно другие хожу возле работы 2 раза в неделю.Очень рад этому.я развиваюсь!!!!это круто!!!
Решил вести тут рубрику ПХП.ньюансы которые мне преподают на курсах будут записываться сюда.нестандартные решения и все такое.
Вообщем обоими курсами я доволен.много нового и интересного.2 разных препода.2 разных начецеленности и направленности.я доволен.много интересного узнал.ОЧЕНЬ МНОГО.4 занятия уже было.ДАЖЕ 5.вот.
Развите в другом направлении:играю в покер.вывел с биржи лаве.неприбыльно пока. покер тоже неприбыльно но хоть я вижу возможность того что я заработаю денег.играю уже с холдем менеджером.такие дела.думаю еще на ява пойти.но тут уже вот думаю.нада наверное все силы одному посветить.а то за все браться нельзя.

Скачал книгу php|architect's Zend PHP 5 Certification Study Guide
и буду по ней готовиться к екзамены.Вот собственно говоря ее и выкладываю:

https://docs.google.com/file/d/0Bz-eAFDeYyVvWVRXSHVjZVdTTG8/edit?usp=sharing

Кроме того есть 2 проекта которые буду реализовывать на пхп.

ЧТо по лечению и прогрессу в плане Х.Идем.
По лечению в плане У застой пока.поеду к доктору скоро.
По ЧП.движений никаких.
По паспорту.тоже.мрак.это я втыкаю пиздец.жесть.НУЖНО СРОЧНО ЧТО ЧТО ДЕЛАТЬ.

вот собственно говоря и ВСЕ на данный момент.
а так вообще все очень хорошо.я счастлив.чего и вам желаю))))))