| Autor | Zpráva | ||
|---|---|---|---|
| jrw Profil |
#1 · Zasláno: 28. 10. 2006, 17:43:31
Mám funkci která vrací jako hodnotu pole, jak z toho dostanu ty proměnné? Zkoušel jsem to pole vypsat ale nějak to nefungovalo.
Díky function nejaka_funkce(){ // tělo funkce return array($width, $height); } |
||
| nightfish Profil |
#2 · Zasláno: 28. 10. 2006, 18:07:08
$vysledek = nejaka_funkce();
echo $vysledek[0]."<br>"; echo $vysledek[1]."<br>"; |
||
| Anonymní Profil * |
#3 · Zasláno: 28. 10. 2006, 18:09:10
příkazem List
obsah pole naházíš do příšlušných proměnných vypsaných jako parametry funkce List List($width, $height) = nejaka_funkce(); |
||
| jrw Profil |
#4 · Zasláno: 28. 10. 2006, 18:20:52
No abych byl konkrétní tak je to tato funkce. Pokaždé mi to vrátí nulu.
<?php $file_in = $soubor; $max_x = 300; /** Vrácení rozměrů obrázku po zmenšení * @param string $file_in název zmenšovaného souboru * @param int [$max_x] maximální šířka výsledného obrázku, 0 pokud na ní nezáleží * @param int [$max_y] maximální výška výsledného obrázku, 0 pokud na ní nezáleží * @return array ($width, $height) výsledná šířka a výška * @copyright Jakub Vrána, http://php.vrana.cz */ function image_shrink_size($file_in, $max_x = 0, $max_y = 0) { global $width; list($width, $height) = getimagesize($file_in); if (!$width || !$height) { return array(0, 0); } if ($max_x && $width > $max_x) { $height = round($height * $max_x / $width); $width = $max_x; } if ($max_y && $height > $max_y) { $width = round($width * $max_y / $height); $height = $max_y; } return array($width, $height); } $vysledek = image_shrink_size($soubor, $max_x); echo $vysledek[0]."<br>"; echo $vysledek[1]."<br>"; //List($width, $height) = image_shrink_size($soubor, $max_x); //echo $width; ?> |
||
| Alphard Profil |
#5 · Zasláno: 28. 10. 2006, 19:00:54
máš určitě správně cestu k obrázku, který neobsahuje chybu?
jde o to, že při selhání funkce getimagesize by to vrátilo tebou zmíněnou nulu list($width, $height) = getimagesize($file_in); if (!$width || !$height) { return array(0, 0); |
||
|
Časová prodleva: 20 let
|
|||
Toto téma je uzamčeno. Odpověď nelze zaslat.
0