PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи

Страниц (19): В начало « ... 9 10 11 12 [13] 14 15 16 17 ... » В конец

> Найдено сообщений: 276
scuter Отправлено: 13 Мая, 2008 - 16:52:43 • Тема: Функции PHP. Нужна помощь! • Форум: Программирование на PHP

Ответов: 7
Просмотров: 329
http://www.php.su/download/?docs
scuter Отправлено: 13 Мая, 2008 - 14:14:14 • Тема: как написать удобный шаблонизатор • Форум: Программирование на PHP

Ответов: 27
Просмотров: 1501
Цитата:
И почему смарти не подходит ?

смарти занимает много места частенько выдаёт савсем ненужные веши,
там очень большая фильтрация кода, которая савсем не нужна,
к тому же он может вывести то что ненадо выводить,
коточе сптошной косяк в результате получается.
scuter Отправлено: 12 Мая, 2008 - 17:30:56 • Тема: как написать удобный шаблонизатор • Форум: Программирование на PHP

Ответов: 27
Просмотров: 1501
Радость Радость Радость
Цитата:
SMARTY

а вот смарти тут савсем не катит,
я так понимаю ни кто париться с этим делом не хочет,
придётся мне самому попариться.
scuter Отправлено: 11 Мая, 2008 - 16:59:19 • Тема: 404я ошипка • Форум: Программирование на PHP

Ответов: 3
Просмотров: 256
http://php.su/articles/?cat=apache&page=009
http://php.su/articles/?cat=others&page=006
scuter Отправлено: 11 Мая, 2008 - 16:56:47 • Тема: как написать удобный шаблонизатор • Форум: Программирование на PHP

Ответов: 27
Просмотров: 1501
Цитата:
evalom значит.
str_replace("if()",eval(),$str );

а это как,
я как то сомниваюсь что такое дело прокатит.
PHP:
скопировать код в буфер обмена
  1. function tpl_replace($search, $replace, $subject)
  2. {
  3.     $subject = str_replace("if()",eval(),$subject );
  4.     return str_replace('<--<>'.$search.'<>-->', $replace, $subject);
  5. }
scuter Отправлено: 11 Мая, 2008 - 16:49:37 • Тема: как закэшировать данные • Форум: Программирование на PHP

Ответов: 2
Просмотров: 227
Цитата:
Записывайте куда нибудь.

я просто думал что в php есть уже встроеная какая то штука для кэша,
по началу пробовал вот эти функции http://php.su/functions/?cat=shmop
но они не работают у меня на локалке и серваке реальном тоже не работают,
поэтому наверное придётся всё делать на файлах,
сейчас накропал одну не затейливою штуку,
PHP:
скопировать код в буфер обмена
  1. class cache
  2. {
  3.         var $dir;
  4.         var $tpls;
  5.         function __construct($dir)
  6.         {
  7.                 if(is_string($dir))
  8.                 {
  9.                         $this->dir = $dir;
  10.                         if(is_dir($dir))
  11.                         {
  12.                                 $scan = scandir($dir);
  13.                                 $scan = array_filter($scan, '$this->file_filter');
  14.                         }
  15.                         else
  16.                         {
  17.                                 $this->__destruct();
  18.                         }
  19.                 }
  20.                 else
  21.                 {
  22.                         $this->__destruct();
  23.                 }
  24.         }
  25.         function __destruct($erroe='no corect.')
  26.         {
  27.                 return $erroe;
  28.         }
  29.         function file_filter($type)
  30.         {
  31.                 return preg_match('/\.tmp$/i', $type);
  32.         }
  33.         function is_cache($file)
  34.         {
  35.                 if(file_exists($this->dir.'/'.$file.'.tmp'))
  36.                 {
  37.                         return true;
  38.                 }
  39.                 else
  40.                 {
  41.                         return false;
  42.                 }
  43.         }
  44.         function get($cache)
  45.         {
  46.                 if(file_exists($this->dir.'/'.$cache.'.tmp'))
  47.                 {
  48.                         $cache = file_get_contents($this->dir.'/'.$cache.'.tmp');
  49.                         return eval($cache);
  50.                 }
  51.                 else
  52.                 {
  53.                         return false;
  54.                 }
  55.         }
  56.         function save($name, $put)
  57.         {
  58.                 $put = var_export($put, true);
  59.                 if(@file_put_contents($this->dir.'/'.$name.'.tmp', $put))
  60.                 {
  61.                         return true;
  62.                 }
  63.                 else
  64.                 {
  65.                         return false;
  66.                 }
  67.         }
  68.         function add($name, $put)
  69.         {
  70.                 if($cache = $this->get())
  71.                 {
  72.                         $cache = array_merge_recursive ($put, $cache);
  73.                 }
  74.                 else
  75.                 {
  76.                         $cache = $put;
  77.                 }
  78.                 if($this->save($name, $cache))
  79.                 {
  80.                         return true;
  81.                 }
  82.                 else
  83.                 {
  84.                         return false;
  85.                 }
  86.         }
  87.         function create($name)
  88.         {
  89.                 if(!file_exists($this->dir.'/'.$name.'.tmp'))
  90.                 {
  91.                         return file_get_contents($this->dir.'/'.$name.'.tmp', '');
  92.                 }
  93.                 else
  94.                 {
  95.                         return true;
  96.                 }
  97.         }
  98. }
scuter Отправлено: 10 Мая, 2008 - 20:30:05 • Тема: как закэшировать данные • Форум: Программирование на PHP

Ответов: 2
Просмотров: 227
скажите есть ли в PHP как нибудь переменная или функции которая кэширует данные
которые не является индивидуальной для данного пользователя,
то есть один юзер нажал на кнопочку а другой юзер увидел это дело на странице когда,
обновил страницу.
scuter Отправлено: 10 Мая, 2008 - 20:23:12 • Тема: где скачать то самый PHPIF • Форум: Программирование на PHP

Ответов: 2
Просмотров: 205
большое спасибо!!!
scuter Отправлено: 10 Мая, 2008 - 20:19:51 • Тема: как написать удобный шаблонизатор • Форум: Программирование на PHP

Ответов: 27
Просмотров: 1501
всё просто,
когда я вытаскиваю данные из базы,
всё это дело сразу проходит через шаблонизатор,
когда текста в ячейке нет, это дело заменяется на пустату,
а когда в базе присутствуют ссылки на картинки,
вот с этим получился косяк, пустую картинку отображать нельзя,
и профильтровань переменную которую получаю из базы тоже не могу,
так как таблици создаю не я, поэтому и понадобилось вставить конструкцию.
scuter Отправлено: 10 Мая, 2008 - 12:43:06 • Тема: где скачать то самый PHPIF • Форум: Программирование на PHP

Ответов: 2
Просмотров: 205
на сколько я знаю раньше php был просто скроптом для PERL,
называли его PHPIF, и это дело ни как не могу найти,
сейчас даже PHP3 не везде можно найти, а такой анохрониз и подавно не получается,
может кто когда его скачивал и подскажет, где его достать.
scuter Отправлено: 10 Мая, 2008 - 12:30:49 • Тема: ааааааааааа. памагитеее =) • Форум: Корзина

Ответов: 6
Просмотров: 3307
так тебе скрипт на php или на javascript нужен?
scuter Отправлено: 10 Мая, 2008 - 03:55:54 • Тема: как написать удобный шаблонизатор • Форум: Программирование на PHP

Ответов: 27
Просмотров: 1501
просто в различных других шаблонизаторах,
есть конструкции и цыклы (if, for, switch),
через те функции которые есть можно просто проставить маркеры вшаблоне и вывести через эти функции,
примерно так,
PHP:
скопировать код в буфер обмена
  1. $tpl = file_get_contents('./tpl/index.tpl');
  2. $array = array('top' => 'Шапка', 'left' => 'левый блок', 'right' => 'правый блок', 'content' => 'материал');
  3. $html = tpl_array_replace($array, $tpl);
  4. print $html;


шаблон может быть таким,
CODE (text):
скопировать код в буфер обмена
  1. <table width="100%" border="0" cellpadding="0" cellspacing="0">
  2.         <tr>
  3.                 <td colspan="3"><!--<>top<>--></td>
  4.         </tr>
  5.         <tr>
  6.                 <td><!--<>left<>--></td>
  7.                 <td><!--<>content<>--></td>
  8.                 <td><!--<>right<>--></td>
  9.         </tr>
  10. </table>

функция берёт ключи массива и заменяет их на содержимое,
ну так вот как сделать конструкцию что бы в шаблоне можно было сделать так,
CODE (text):
скопировать код в буфер обмена
  1. <table width="100%" border="0" cellpadding="0" cellspacing="0">
  2.         <!--<>if(top)<>--><tr>
  3.                 <td colspan="3"><!--<>top<>--></td>
  4.         </tr><!--<>endif(top)<>-->
  5.         <tr>
  6.                 <!--<>if(left)<>--><td><!--<>left<>--></td><!--<>endif(left)<>-->
  7.                 <!--<>if(content)<>--><td><!--<>content<>--></td><!--<>endif(content)<>-->
  8.                 <!--<>if(right)<>--><td><!--<>right<>--></td><!--<>endif(right)<>-->
  9.         </tr>
  10. </table>
scuter Отправлено: 09 Мая, 2008 - 20:09:25 • Тема: Изменнение размера картинок.. • Форум: Напишите за меня, пожалуйста

Ответов: 2
Просмотров: 55
PHP:
скопировать код в буфер обмена
  1. function imageresize($outfile,$infile,$neww,$newh,$quality,$type='jpg')
  2. {
  3.         if($type == 'jpg' || $type == 'jpeg')
  4.         {
  5.                 $im=imagecreatefromjpeg($infile);
  6.         }
  7.         elseif($type == 'gif')
  8.         {
  9.                 $im=imagecreatefromgif($infile);
  10.         }
  11.         elseif($type == 'png')
  12.         {
  13.                 $im=imagecreatefrompng($infile);
  14.         }
  15.         elseif($type == 'bmp')
  16.         {
  17.                 $im=imagecreatefromwbmp($infile);
  18.         }
  19.         else
  20.         {
  21.                 $im=imagecreatefromjpeg($infile);
  22.         }
  23.         $ix = imagesx($im);
  24.         $iy = imagesy($im);
  25.         $iyr = $iy*$neww;
  26.         $iyr = $iyr/$ix;
  27.         $ixr = $ix*$newh;
  28.         $ixr = $ixr/$iy;
  29.         if($iyr < $newh)
  30.         {
  31.                 $newh = $iyr;
  32.         }
  33.         else
  34.         {
  35.                 $neww = $ixr;
  36.         }
  37.         $im1=imagecreatetruecolor($neww,$newh);
  38.         imagecopyresampled($im1,$im,0,0,0,0,$neww,$newh,imagesx($im),imagesy($im));
  39.         if($type == 'jpg' || $type == 'jpeg')
  40.         {
  41.                 imagejpeg($im1,$outfile,$quality);
  42.         }
  43.         elseif($type == 'gif')
  44.         {
  45.                 imagegif($im1,$outfile,$quality);
  46.         }
  47.         elseif($type == 'png')
  48.         {
  49.                 imagepng($im1,$outfile,$quality);
  50.         }
  51.         elseif($type == 'bmp')
  52.         {
  53.                 imagewbmp($im1,$outfile,$quality);
  54.         }
  55.         else
  56.         {
  57.                 imagejpeg($im1,$outfile,$quality);
  58.         }
  59.         imagejpeg($im1,$outfile,$quality);
  60.         imagedestroy($im);
  61.         imagedestroy($im1);
  62. }
scuter Отправлено: 09 Мая, 2008 - 20:04:24 • Тема: С днём победы • Форум: Прочее

Ответов: 4
Просмотров: 57
+1
scuter Отправлено: 09 Мая, 2008 - 19:32:02 • Тема: как написать удобный шаблонизатор • Форум: Программирование на PHP

Ответов: 27
Просмотров: 1501
я написал пару функций через которые шаблонизирую страници,
раньше этого было достаточно, но сейчас мне необходимо вставить в него конструкции хотябы элементарный IF, подскажите как это сдело по проще и побыстрее,
вот функции шаблонизации,
PHP:
скопировать код в буфер обмена
  1. function tpl_str($haystack, $needle)
  2. {
  3.         return strstr('<--<>'.$haystack.'<>-->', $needle);
  4. }
  5.  
  6. function tpl_replace($search, $replace, $subject)
  7. {
  8.         return str_replace('<--<>'.$search.'<>-->', $replace, $subject);
  9. }
  10.  
  11. function tpl_array_replace($replace, $subject)
  12. {
  13.         if(is_array($replace))
  14.         {
  15.                 foreach ($replace as $key => $val)
  16.                 {
  17.                         if(is_string($val) || is_numeric($val))
  18.                         {
  19.                                 $subject = tpl_replace($key, $val, $subject);
  20.                         }
  21.                 }
  22.                 return $subject;
  23.         }
  24.         else
  25.         {
  26.                 return '';
  27.         }
  28. }

Страниц (19): В начало « ... 9 10 11 12 [13] 14 15 16 17 ... » В конец
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB