首先來看看鍵名是string,兩者區別:複製代碼 代碼如下:$arr1 = array('a'=>'PHP');$arr2 = array('a'=>'JAVA');//如果鍵名為字元,且鍵名相同,array_merge()後面數組元素值會覆蓋前面數組元素值print_r(array_merge($arr1,$arr2)); //Array ( [a] => JAVA )//如果鍵名為字元,且鍵名相同,數組相加會將最先出現的值作為結果print_r($arr1+$arr2); //Array (
wget http://xcache.lighttpd.net/pub/Releases/1.3.0/xcache-1.3.0.tar.gzsudo tar -xzvf xcache-1.3.0.tar.gzcd xcache-1.3.0sudo /usr/local/php-5.3.3/bin/phpize sudo ./configure --with-php-config=/usr/local/php-5.3.3/bin/php-configsudo makesudo make
首先啟動命令列1.在命令列運行:taskkill /f /im mysqld-nt.exe下面的操作是操作mysql中bin目錄下的一些程式,如果沒有配置環境變數的話,需要切換到mysql的bin 目錄下執行如下語句。不然無效2.繼續在命令列運行:mysqld-nt --skip-grant-tables3.新開一個命令列運行:mysql -u root
PHP 支援可變函數的概念。這意味著如果一個變數名後有圓括弧,PHP 將尋找與變數的值同名的函數,並且嘗試執行它。可變函數可以用來實現包括回呼函數,函數表在內的一些用途。 變數函數不能用於語言結構,例如 echo() ,print() ,unset() ,isset() ,empty() ,include() ,require() 以及類似的語句。需要使用自己的封裝函數來將這些結構用作變數函數。 Example #1 可變函數樣本 複製代碼 代碼如下:function foo () {
最近收集了一些關於THinkPHP串連Oracle資料庫的問題,有很多朋友按照串連mysql的方法來操作,導致有一些方法在Oreale中無法正常使用。比如說:findAll,Select方法無法使用,擷取不到需要的資料。Create和add方法無法建立和寫入資料到資料庫中。其實根據以前問題我做了幾天調試,找到了問題所在,並成功在我自己一個小項目練習中使用正常,那麼現在就將我的經驗分享給大家。1,資料庫的串連及設定檔的內容我就不說了, 上面已經做瞭解釋。我這裡只根據一個資料表的例子來說明我的操作。
PHP SESSION原理我們知道,session是在伺服器端保持使用者會話資料的一種方法,對應的cookie是 在用戶端保持使用者資料。HTTP協議是一種無狀態協議,伺服器響應完之後就失去了與瀏覽器的聯絡,最早,Netscape將cookie引入瀏覽器,使得 資料可以用戶端跨頁面交換,那麼伺服器是如何記住眾多使用者的會話資料呢?首先要將用戶端和伺服器端建立一一聯絡,每個客戶
一個是:DIRECTORY_SEPARATOR DIRECTORY_SEPARATOR:路徑分隔字元,linux上就是‘/' windows上是‘\' 一個是:PATH_SEPARATOR PATH_SEPARATOR:include多個路徑使用,在windows下,當你要include多個路徑的話,你要用”;”隔開,但在linux下就使用”:”隔開的。
php在做後台伺服器的時候,經常會遇到這種情況,需要解析來自前台的xml檔案,並將資料以xml格式返回,在這種情況下,xml與php中關聯陣列的轉化是非常頻繁的事情。比如flex和其他用戶端程式與伺服器的互動,經常會使用這種方法。下面是我歸納的兩個方法,大大簡化了xml與數組相互轉化的工作量。複製代碼 代碼如下:/** * * 將簡單數組轉化為簡單的xml * @param string $data 要進行轉化的數組 * @param string $tag
cron是一個Linux下的後台進程,用來週期性執行一些任務。因為我用的是Ubuntu,所以這篇文章中的所有命令也只能保證在Ubuntu下有效,但其他系統應該也差不多。想要讓cron執行你指定的任務,首先就要編輯crontab檔案。crontab是一個文字檔,用來存放你要啟動並執行命令。你可以以下命令crontab -e 來開啟你的使用者所屬的crontab檔案。第一次用這個命令,會讓你選擇文字編輯器,我選的是vim。選定的編輯器也可以使用select-editor
本文將介紹Php 產生靜態html檔案的三種方法 。1,下面使用模版的一個方法!複製代碼 代碼如下:$fp = fopen ("templets.html","a"); if ($fp){ $fup = fread ($fp,filesize("templets.html")); $fp2 = fopen ("html.shtml","w"); if ($fwrite ($fp2,$fup)){ $fclose ($fp); $fcolse ($fp2); die ("寫入模板成功"); }
做web開發,我們經常會做代碼走查,很多時候,我們都會抽查一些核心功能,或者常會出現漏洞的邏輯。隨著技術團隊的壯大,組員技術日益成熟。 常見傻瓜型SQL注入漏洞、以及XSS漏洞。會越來越少,但是我們也會發現一些新興的隱蔽性漏洞偶爾會出現。這些漏洞更多來自開發人員,對一個函數、常見模組功能設計不足,遺留下的問題。以前我們能夠完成一些功能模組,現在要求是要安全正確方法完成模組才行。
有些主機服務商把php的allow_url_fopen選項是關閉了,就是沒法直接使用file_get_contents來擷取遠程web頁面的內容。那就是可以使用另外一個函數curl。下面是file_get_contents和curl兩個函數同樣功能的不同寫法file_get_contents函數的使用樣本:複製代碼 代碼如下:$file_contents = file_get_contents('http://www.jb51.net');echo
CI預設的rewrite url中是類似這樣的,例如你的CI根目錄是在/CodeIgniter/下,你的下面的二級url就類似這樣http://localhost/CodeIgniter/index.php/welcome。不太好看,怎麼把其中的index.php取掉呢?1. 開啟apache的設定檔,conf/httpd.conf :LoadModule rewrite_module modules/mod_rewrite.so,把該行前的#去掉。搜尋 AllowOverride
gurl 要下載的圖片地址$rfurl 來路。如果靶心圖表像做了防盜鏈設定,可以繞過。$filename 下載圖片儲存的檔案名稱,相對路徑,不要用realpath$gcookie 調整cookie 偽造的cookie$JumpCount 跳轉計數$maxtime 最大次數調用方法:DownImageKeep(“http://www.baidu.com/img/baidu_jgylogo2.gif”,”http://baidu.com”,”a.gif”,”",0,10);複製代碼
PHP現在推出5.3.0版本了,不過下載的時候有幾個不同版本選擇。那就是VC6 X86和VC9 X86。首先我來解答:VC6是什嗎?VC6就是legacy Visual Studio 6 compiler,就是使用這個編譯器編譯的。VC9是什嗎?VC9就是the Visual Studio 2008
複製代碼 代碼如下:function remote($urls, $name = '', $path = '', $dir = './images/') { if (!is_array($urls) or count($urls) == 0) { return false; } dmkdir($dir); $curl = $text = array(); foreach($urls as $k => $v) { if (!empty($v) && preg_match("~^http~i",
本代碼是從uchome的代碼修改的,是因為要解決uchome的效率而處理的。這個思維其實很久就有了,只是一直沒有去做,相信也有人有同樣的想法,如果有類似的,那真的希望提出相關的建議。封裝的方式比較簡單,增加了唯讀資料庫連接的介面擴充,不使用唯讀資料庫也不影響原代碼使用。有待以後不斷完善。。為了方便,試試建立了google的一個項目:http://code.google.com/p/mysql-rw-php/希望給有需要的朋友帶來協助。PHP實現的Mysql讀寫分離主要特性:1.簡單的讀寫分離 2
複製代碼 代碼如下:$useragent = addslashes(strtolower($_SERVER['HTTP_USER_AGENT'])); if (strpos($useragent, 'googlebot')!== false){$bot = 'Google';} elseif (strpos($useragent,'mediapartners-google') !== false){$bot = 'Google Adsense';} elseif
web伺服器的php session都給memcached ,這樣你不管分發器把 ip串連分給哪個web伺服器都不會有問題了,配置方法很簡單,就在php的設定檔內增加一條語句就可以了,不過前提你需要裝好memcache模組1.設定session用memcache來儲存方法I: 在 php.ini 中全域設定session.save_handler = memcachesession.save_path = "tcp://127.0.0.1:11211"方法II: 某個目錄下的
複製代碼 代碼如下:/** * SVN 外部命令 類 * * @author rubekid * * @todo comment need addslashes for svn commit * */class SvnUtils { /** * * svn 帳號 */ const SVN_USERNAME = "robot"; /** * svn 密碼 */ const SVN_PASSWORD = "robot2013";