發表文章

PHP 教學 - 無窮迴圈用法

圖片
我們有時會需要寫一些無窮迴圈,多半程式語言都會提供類似 while(true) 這樣的語法句子,那麼 php 又該如何表達呢? 其實也可以利用 while(1) 來表示: <?php while (true ) { print "In loop!\n" ; } ?> <?php while (1 ) { print "In loop!\n" ; } ?>   或者用 for 來表示: <?php for (;;) { print "In loop!\n" ; } ?> 建議千萬別開網頁,因為會打不開,改用cmd來執行吧

PHP 教學 - 可變變數用法

可變變數的名稱是其他變數的值,是變化的,在某些情況下是可以讓我們少寫一些程式碼的! <?php $today="Sunday"; $$today="星期日"; echo "{$today}={$$today}"; ?> 以上範例 「$$today=”星期日”;」這個變數沒有真正的名稱, 其名稱取決於$today的值,所以當$today的值等於「Sunday」時, 「$$today」的真正名稱就是「$$Sunday」,換句話說實際上就是指定$$Sunday=”星期日” 的意思。 以下例子讓我們更清楚使用時間及差別: <?php $Sunday="星期日"; $Monday="星期一"; $Tuesday="星期二"; $Wednesday="星期三"; $Thursday="星期四"; $Friday="星期五"; $Saturday="星期六"; $today=date("l"); if($today=="Sunday"){ echo "今天是{$Sunday}"; }elseif($today=="Monday"){ echo "今天是{$Monday}"; }elseif($today=="Tuesday"){ echo "今天是{$Tuesday}"; }elseif($today=="Wednesday"){ echo "今天是{$Wednesday}"; }elseif($today=="Thursday"){ echo "今天是{$Thursday}"; }elseif($today=="Friday"){ echo "今天是{$Friday}"; }elseif($today=="Satu...

PHP 教學 - 有趣的 google map api 應用

圖片
php 如何應用 google map api 呢? 首先應該在 mysql 中建立欄位 CREATE TABLE wholocations (   id int(11) NOT NULL auto_increment,   lat decimal(10,6) NOT NULL default '0.000000',   lon decimal(10,6) NOT NULL default '0.000000',   description varchar(255) NOT NULL default '',   PRIMARY KEY  (id) ) ; 然後記得去建立幾筆資料 去申請 google map api key <html> <head> <title>字串</title> <script src="http://maps.google.com/maps?file=api&v=2&key=你的key" type="text/javascript"></script> </head>     <body>     <div style ="text-align:center;">     <p><strong>gmap</strong></p>         <div id="map" style="width: 800px; height: 600px;"></div>     <script type="text/javascript">         var map = new GMap2(document.getElementById("map"));         map.addControl(new GLargeMapContr...

xampp 常用的設定

xampp 設定 – php.ini 翻譯與設定 修改 httpd.conf DocumentRoot “C:/xampp/htdocs" 改為 DocumentRoot “C:/xampp/htdocs/www" 我習慣用www包起來我寫的專案 若有固定IP要開放伺服器外連,修改httpd-xampp.conf , <LocationMatch “^/(?i:(?:xampp|security|licenses|phpmyadmin|webalizer|server-status|server-info))"> #Order deny,allow Allow from all #Deny from all #Allow from ::1 127.0.0.0/8 #fc00::/7 10.0.0.0/8 172.16.0.0/12 192.168.0.0/16 #fe80::/10 169.254.0.0/16#ErrorDocument 403 /error/XAMPP_FORBIDDEN.html.var </LocationMatch> 允許所有人使用。 修改php.ini (PHP 7 適用) short_open_tag = On open_basedir = 請指定 max_execution_time = 60; 每個腳本的最大執行時間, 按秒計. max_input_time = 60 ; 每個腳本的最大讀取資料時間, 按秒計. memory_limit = 800M; 一個腳本可使用記憶體的最大值 display_errors = On 遇到 PHP 語法解析錯誤,會顯示錯誤訊息。建議正式環境改為 Off post_max_size = 200M default_charset = “UTF-8″ max_input_vars = 100000 指定每次傳送最大的表單數量,如多少比筆<input type=”text”> 或註解掉 upload_max_filesize = 200M 允許上傳檔案的最大值. date.timezone = Asia/Taipei php.ini 翻譯 http://mic1491.pixnet.net/blog/post/30159855-php.i...

usb隨身碟容量變小的解決方法

usb隨身碟容量變小的解決方法 當使用隨身碟或sd卡時, 如果使用某些格式化工具, 使得容量改變, 例如原來8G變成2G, 如何恢復成原來的8G呢? 這裡提供一個簡單的方法: 在windows 7 (windows xp不支援列出usb裝置), 在命令列模式, 輸入執行 diskpart 出現 diskpart 的大於符號, 再輸入 : list disk  這時會列出, 所有掛在系統上的磁碟, 包含usb隨身碟(u盤)或sd卡, 如果是使用windows xp,將無法列出隨身碟。如果您想恢復容量的隨身碟在第2個裝置(每個磁碟, 隨身碟, u盤, sd卡, mini sd卡,任何儲存裝置其前均會有一代號), 請輸入: select disk 2 確定選擇到變小的隨身碟後, 再輸入: clean  這時會清除隨身碟的資料(請誤必小心操作, 以免清除到別的磁碟或usb碟的資料) 再輸入: create partition primary  會在隨身碟建立一個主要分割區 回到windows系統, 對此容量變小的usb隨身碟, 加以格式化, 完成後, 就可以發現原來縮小減少的的容量, 已經恢復正常大小了。 這裡還找到一篇能恢復隨身碟容量的相關文章, 還未及細看,如果有朋友依上面方法仍不能解決usb空間縮小的問題,可自行參考: http://www.trishtech.com/2011/06/restore-usb-flash-disk-back-to-full-capacity/

Python 研究 - 常見的程式錯誤訊息

這裏列出了常見的的一些程序 crash 的運行時錯誤。 1)忘記在 if , elif , else , for , while , class ,def 聲明末尾添加 :(導致 “SyntaxError :invalid syntax”) 該錯誤將發生在類似如下代碼中: if spam == 42     print('Hello!') 2)使用 = 而不是 ==(導致“SyntaxError: invalid syntax”)  = 是賦值操作符而 == 是等於比較操作。該錯誤發生在如下代碼中: if spam = 42:     print('Hello!') 3)錯誤的使用縮進量。(導致“IndentationError:unexpected indent”、“IndentationError:unindent does not match any outer indetation level”以及“IndentationError:expected an indented block”) 記住縮進增加只用在以:結束的語句之後,而之後必須恢覆到之前的縮進格式。該錯誤發生在如下代碼中: print('Hello!')     print('Howdy!') 或者: if spam == 42:     print('Hello!')   print('Howdy!') 或者: if spam == 42: print('Hello!') 4)在 for 循環語句中忘記調用 len() (導致“TypeError: 'list' object cannot be interpreted as an integer”) 通常你想要通過索引來?代一個list或者string的元素,這需要調用 range() 函數。要記得返回len 值而不是返回這個列表。 該錯誤發生在如下代碼中: spam = ['cat', 'dog', 'mouse'] for i in range(spam):     print(spam...

Python 研究 - pyserial 用法

python中pyserial模塊使用方法 一、概述     pyserial模塊封裝了對串口的訪問。 二、特性     在支持的平台上有統一的接口。     通過python屬性訪問串口設置。     支持不同的字節大小、停止位、校驗位和流控設置。     可以有或者沒有接收超時。     類似文件的API,例如read和write,也支持readline等。     支持二進制傳輸,沒有null消除,沒有cr-lf轉換。 三、系統要求     python 2.3及以上版本,包括py3k。 四、使用方法和實例 1、導入pyserial模塊 import serial 2、打開串行口 // 打開串口0, 9600,8N1,連接超時0.5秒 import serial ser=serial.Serial(" /dev/ttyUSB0", 9600, timeout= 0.5 ) #使用USB連接串行口 ser=serial.Serial(" /dev/ttyAMA0", 9600, timeout= 0.5 ) #使用樹莓派的GPIO口連接串行口 ser=serial.Serial(1 , 9600, timeout= 0.5 ) #winsows系統使用com1口連接串行口 ser=serial.Serial("com1" , 9600, timeout= 0.5 ) #winsows系統使用com1口連接串行口 ser=serial.Serial(" /dev/ttyS1 " , 9600, timeout= 0.5 ) #Linux系統使用com1口連接串行口 print ser.name #打印設備名稱 print ser.port #打印設備名 ser.open ()  #打開端口 s = ser.read(10) #從端口讀10個字節 ser.write("hello") #向端口些數據 ser.close() #關閉端口         data = ser....