需要發散思維學習PHP

來源:互聯網
上載者:User

我覺得在學習的過程中,大家要知道“玩”,製造點成就感,那樣的話 學習的效果和熱情就會很高漲,
就會更喜歡自己學習的東西!
舉例說明:
今天學習PHP的映像函數部分,學習了幾個函數,他們分別是:
getimagesize()
array getimagesize ( string $filename [, array &$imageinfo ] )
getimagesize() 函數將測定任何 GIF,JPG,PNG,SWF,SWC,PSD,TIFF,BMP,IFF,JP2,JPX,JB2,JPC,XBM 或 WBMP 影像檔的大小並返回映像的尺寸以及檔案類型和一個可以用於普通 HTML 檔案中 IMG 標記中的 height/width 文本字串。
imagecreatefromgif()
resource imagecreatefromgif ( string $filename )
imagecreatefromgif() 返回一映像標識符,代表了從給定的檔案名稱取得的映像。
意思就是以後為了方便使用這個圖片資源,這個函數返回一個操作的控制代碼。
類似的函數還有imagecreatefromjpeg(),imagecreatefrompng() 當然還有很多,大家可以看官方線上手冊
imagecolorat()
int imagecolorat ( resource $image , int $x , int $y )
返回 image 所指定的圖形中指定位置像素的色彩索引值。
imagecolorsforindex()
array imagecolorsforindex ( resource $image , int $index )
本函數返回一個具有 red,green,blue 和 alpha 的鍵名的關聯陣列,包含了指定色彩索引的相應的值。
大家看了一段生硬的介紹,估計困了,不過請堅持一下!
那麼學了這幾個函數後,怎麼練習一下呢?
其實我學到這幾個函數,就立即想到了一個很好玩的東西可以做!
是什嗎?你猜猜~!!!!
看代碼:
<?php
$url = "logo-yy.gif";
$size = getimagesize($url);
$width = $size[0];
$height = $size[1];
$im = imagecreatefromgif($url);

for($y=1;$y<$height;$y++){
for($x=1;$x<$width;$x++){
$color_index = imagecolorat($im, $x, $y);
$color_tran = imagecolorsforindex($im, $color_index);
echo("<span class=\"c\" style=\"color:RGB(".$color_tran['red'].",".$color_tran['green'].",".$color_tran['blue'].");\">");
echo("愛");
echo("</span>");
}
echo("<br>");
}
?>
要注意的是我的程式裡用的函數是imagecreatefromgif()
所以變數$url指向的檔案應該是GIF格式的,如果想指向JPG格式的檔案要用imagecreatefromjpeg()
當然我們可以寫在一起,因為第一個函數就可以判斷圖片的格式,我在這裡就不寫了!!哈哈
好了,有php環境的趕緊試試是什麼吧!呵呵
不建議用太大的圖片!小logo就好了!
不然,你可別怪我沒告訴你啊!
這個例子沒什麼實際用途!!但是他可以激發大家學習的樂趣!!
獻給正在學習PHP的人!

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.