[php] Новичкам: задаем вопросы

Discussion in 'PHP' started by _Great_, 26 May 2007.

Thread Status:
Not open for further replies.
  1. Anarh1st

    Anarh1st Member

    Joined:
    19 May 2010
    Messages:
    32
    Likes Received:
    5
    Reputations:
    0
    Да, на строчке выше была ошибка, спасибо.
     
  2. Anarh1st

    Anarh1st Member

    Joined:
    19 May 2010
    Messages:
    32
    Likes Received:
    5
    Reputations:
    0
    Хочется узнать как выгледят функции типа is_numeric или is_array
    чтоб составить функцию такого же типа.
    Например
    function is_olololo{
    ...
    }
    Кто знает, помогите пожалуйста
     
  3. roxblnfk

    roxblnfk Elder - Старейшина

    Joined:
    6 Feb 2010
    Messages:
    189
    Likes Received:
    42
    Reputations:
    19
    function is_olololo(&$t){
    if($t==='olololo') return true;
    return false;
    }
    ну или функция, возвращающая true, если элемент - массив или число

    function is_arrnum(&$t){
    if(is_array($t) Xor is_bumeric($t)) return true;// можно не Xor а || или or, это не важно
    return false;
    }
    то что возвращает функция решает return()
     
    1 person likes this.
  4. Darth Padla

    Darth Padla Member

    Joined:
    21 Jun 2010
    Messages:
    141
    Likes Received:
    25
    Reputations:
    8
    как сохранить анимацию в гифке при ресайзе? грубо говоря код такой-
    PHP:
    $image="анимированный.gif";
    $src_img imagecreatefromgif($image);
    $dest_img imagecreatetruecolor(w,h);
    imagecopyresampled($dest_img$src_imgцыферки);
    imagegif($dest_img$smallimage);
     
  5. Nescafe

    Nescafe New Member

    Joined:
    21 Aug 2010
    Messages:
    0
    Likes Received:
    0
    Reputations:
    0
    Сначала делай раскадровку, каждый кадр ресайзим, после этого снова склейку кадров, сохраняем, анимация остается.
     
  6. Darth Padla

    Darth Padla Member

    Joined:
    21 Jun 2010
    Messages:
    141
    Likes Received:
    25
    Reputations:
    8
    Как это сделать на php?
     
  7. roxblnfk

    roxblnfk Elder - Старейшина

    Joined:
    6 Feb 2010
    Messages:
    189
    Likes Received:
    42
    Reputations:
    19
    на php в GD2 (и вообще всех стандартных) нету поддержки анимации
    пиши свои библиотеки или гугли готовые
     
  8. b3

    b3 Banned

    Joined:
    5 Dec 2004
    Messages:
    2,174
    Likes Received:
    1,157
    Reputations:
    202
    качай сорцы РНР там в исходниках на С увидишь
     
  9. astrologer

    astrologer Elder - Старейшина

    Joined:
    30 Aug 2007
    Messages:
    837
    Likes Received:
    267
    Reputations:
    59
    Darth Padla,
    http://www.php.net/manual/en/imagick.examples-1.php

    # Example #5 Read in GIF image and resize all frames:
    Code:
    <?php
    
    /* Create a new imagick object and read in GIF */
    $im = new Imagick("example.gif");
    
    /* Resize all frames */
    foreach ($im as $frame) {
        /* 50x50 frames */
        $frame->thumbnailImage(50, 50);
    
        /* Set the virtual canvas to correct size */
        $frame->setImagePage(50, 50, 0, 0);
    }
    
    /* Notice writeImages instead of writeImage */
    $im->writeImages("example_small.gif", true);
    ?>
     
  10. Alekzzzander

    Alekzzzander Elder - Старейшина

    Joined:
    5 Sep 2007
    Messages:
    278
    Likes Received:
    36
    Reputations:
    0
    есть скрипт
    PHP:
    <?php

    include ('header.php');
        
    $checkfiles=file("db");
        foreach(
    $checkfiles as $line)
        {
            
    $tl explode(' | '$line);
            include (
    'bb.php');
            echo 
    "
            <div id=\"txt\">
            <div id=\"user\">
            Автор: <b>"
    .$tl[1]."</b>
            </div>
            <div id=\"date\">
            "
    .$tl[2]."
            </div>
            <div id=\"ln\">
            <a href=\"id"
    .$tl[0]."\">Ссылка на заметку</a>
            </div>
            <br><br>
            <div id=\"text\">
            "
    .$tl[3]."
            </div>
            </div>
            "
    ;
            
        }
    include (
    'footer.php');

    ?>
    в данный момент его отображение в браузере выглядит так:
    PHP:
    Автор".$tl[1]." 
    ".
    $tl[2]." 
    Ссылка на заметку 


    ".$tl[3]." 
    "; } include ('footer.php'); ?>
    все остальные скрипты в данном каталоге работают отлично без всяких проблем, в чем может быть эта проблема?
    подобный кусок скрипта в другом каталоге выводится нормально

    з.ы. в исходном коде страницы отображается весь пхп код
     
    #16390 Alekzzzander, 1 Sep 2010
    Last edited: 1 Sep 2010
  11. roxblnfk

    roxblnfk Elder - Старейшина

    Joined:
    6 Feb 2010
    Messages:
    189
    Likes Received:
    42
    Reputations:
    19
    а этот php код в файле нужного расширения (например .php)?
     
  12. Alekzzzander

    Alekzzzander Elder - Старейшина

    Joined:
    5 Sep 2007
    Messages:
    278
    Likes Received:
    36
    Reputations:
    0
    да, хоть я использую и ЧПУ но и это не помогает, в .htaccess правил все равно открывается так же...
     
  13. temp_late

    temp_late Banned

    Joined:
    22 Aug 2006
    Messages:
    47
    Likes Received:
    7
    Reputations:
    2
    Создай в этом каталоге простой file.php c кодом
    <?php
    echo 'Сегодня: '.date('d.m.Y H:i:s').'<br> =)';
    ?>

    Запусти, если дату выведит, значит php работает идет логическая ошибка в программе.

    по скрипту include ('bb.php'); в цикле мне кажется не лучший вариант

    когда делаешь echo - двойные ковычки в данным случаи не обезательны замени на одинарные <'> двойных переменные смешиваются - там разные чудеса происходят, и меньше слешей нужно использовать для экранирования двойной ковычки =)
     
  14. Alekzzzander

    Alekzzzander Elder - Старейшина

    Joined:
    5 Sep 2007
    Messages:
    278
    Likes Received:
    36
    Reputations:
    0
    вот что я получил в браузере Вашего скрипта :)
    грешить на пхп не хочу потому что в ЭТОМ ЖЕ каталоге другие скрипты работают
     
  15. Alekzzzander

    Alekzzzander Elder - Старейшина

    Joined:
    5 Sep 2007
    Messages:
    278
    Likes Received:
    36
    Reputations:
    0
    ещё такой вопрос в функции мне надо выбирать для какого формата файла какая ф-ция будет использоваться, пробовал if не помогает пробую switch тоже...в чем проблема? переменная после этих операторов не выводится, точнее будто и небыло ее
     
  16. necr0log

    necr0log New Member

    Joined:
    11 Aug 2010
    Messages:
    14
    Likes Received:
    2
    Reputations:
    0
    код в студию
     
  17. Alekzzzander

    Alekzzzander Elder - Старейшина

    Joined:
    5 Sep 2007
    Messages:
    278
    Likes Received:
    36
    Reputations:
    0
    PHP:
    function watermark($ishimg$watermark) {

           if(empty(
    $ishimg) | empty($watermark)) return false;
           
    $wh getimagesize($watermark);
           
    $fh getimagesize($ishimg);
           
    $rwatermark imagecreatefrompng($watermark);
        
        switch (
    $fh) {
        
            case 
    "image/jpeg":
            
    $rfile imagecreatefromjpeg($ishimg);
            break;

            case 
    "image/png":
            
    $rfile imagecreatefrompng($ishimg);
            break;
            
            case 
    "image/gif":
            
    $rfile imagecreatefromgif($ishimg);
            break;
     
    //      $rfile = imagecreatefrompng($ishimg);
    //       $rfile = imagecreatefromgif($ishimg);
        
    }
        
    print_r ($fh);
        
    print_r ($rfile);
           
    imagecopy($rfile$rwatermark$fh[0] - $wh[0], $fh[1] - $wh[1], 00$wh[0], $wh[1]);
           
    imagejpeg($rfile$ishimg'100');
           
    imagedestroy($rwatermark);
           
    imagedestroy($rfile);
           return 
    true;
    }
     
  18. necr0log

    necr0log New Member

    Joined:
    11 Aug 2010
    Messages:
    14
    Likes Received:
    2
    Reputations:
    0
    ебец =\
    http://php.net/manual/en/function.getimagesize.php
    откуда у тебя в $fh вообще должна появиться строка?
     
  19. Alekzzzander

    Alekzzzander Elder - Старейшина

    Joined:
    5 Sep 2007
    Messages:
    278
    Likes Received:
    36
    Reputations:
    0
    $ishimg - изображение одного из трех форматов, причем данные о нем выводит норм
    (Array ( [0] => 200 [1] => 590 [2] => 2 [3] => width="200" height="590" [bits] => 8 [channels] => 3 [mime] => image/jpeg ))
    $watermark - маска изображения постоянный файл формата png

    -----
    хочу подчеркунуть что если убрать вариант выбора то все равботает отлично НО только для одного формата а мне требуется для 3-х
     
  20. necr0log

    necr0log New Member

    Joined:
    11 Aug 2010
    Messages:
    14
    Likes Received:
    2
    Reputations:
    0
    в свиче будет массив, а не строка. так понятней?
    юзай switch($fh['mime'])
     
    1 person likes this.
Thread Status:
Not open for further replies.