1.製作PHP安裝程式的原理 其實PHP程式的安裝原理無非就是將資料庫結構和內容匯入到相應的資料庫中,從這個過程中重新設定串連資料庫的參數和檔案,為了保證不被別人惡意使用安裝檔案,當安裝完成後需要修改安裝檔案。 2. 製作PHP安裝程式的步驟 step1 檢查目錄或檔案的許可權 step2 修改或填加設定檔 step3 檢查設定檔正確性 step4 匯入資料庫 step5 鎖定或刪除安裝檔案 3.製作安裝用到的PHP函數
複製代碼 代碼如下:<?php #******************************************* #作用:頁面無操作,自動到期函數 #參數:$onlinetime 當前頁面最後一次使用時間 #參數:$interval 頁面逾時時間 #返回:無 #******************************************* function user_mktime($onlinetime,$interval){ $new_time = mktime();
Scope Resolution Operator (::) 今天 看joomla源碼的時候,才意識到。原來這個操作符還可以訪問類的非靜態方法啊。真的讓我吃驚不好。一直以為範圍解析運算子只能訪問類的static方法和static成員變數。 如果各位不相信,下面有個簡單的小測試代碼可以證明這個。 複製代碼 代碼如下:class A{ private $_name = 'A'; function __construct(){ echo 'A construct <br />'; }
float類型的表示可以有以下幾種: 複製代碼 代碼如下:<?php $a = 1.234; $b = 1.2e3; $c = 7E-10; ?> 使用PHP的float類型需要注意的是:PHP的float類型的精度有點問題。如果需要高精度的數學計算,可以使用php提供的專用的數學函數 arbitrary precision math functions系列和gmp系列函數。還有就是不要試圖進行比較float類型的變數。 Converting to float For
另外,我們在 控制結構比較兩個數值是否一直的時候,也應該盡量使用 === 來代替 ==(當然,這個也根據具體的商務邏輯選用比較合適的)。 小弟來解釋下 為什麼 var_dump(in_array(0, array('s' )); 這句話的結果是bool(true)。 因為in_array會將0 和's' 進行比較,0是number類型,'s'是string類型,根據php manual 中“Comparison Operators” 一章的說明可知,number 和string進行 比較的時候,
受限於php語言本身不支援多線程,所以開發爬蟲程式效率並不高,這時候往往需 要藉助Curl Multi Functions 它可以實現並發多線程的訪問多個url地址。既然 Curl Multi Function如此強大,能否用 Curl Multi Functions 來寫並發多線程下載檔案呢,當然可以,下面給出My Code: 代碼1:將獲得的代碼直接寫入某個檔案 複製代碼 代碼如下:<?php $urls = array( 'http://www.sina.com.cn/',
得到資料我們不能直接輸出,往往需要對內容進行提取,然後再進行格式化,以更加友好的方式顯現出來。下面先簡單說一下本文的主要內容: 一、 PHP抓取頁面的主要方法: 1. file()函數 2. file_get_contents()函數 3. fopen()->fread()->fclose()模式 4.curl方式 5. fsockopen()函數 socket模式 6. 使用外掛程式(如:http://sourceforge.net/projects/snoopy/)
備忘一下這個函數: 函數名稱:ignore_user_abort 本函數配置或取得使用端串連中斷後,PHP 程式是否仍繼續執行。預設值為中斷串連後就停止執行。在 PHP 設定檔中 (php3.ini/php.ini) 的 ignore_user_abort 選項就是配置處。本功能在 PHP 3.0.7 版之後才開始提供。 官方說明:http://cn2.php.net/manual/en/function.ignore-user-abort.php 使用方法: 複製代碼 代碼如下:ignore_
一.下載相關軟體 軟體 httpd-2.2.15-win32-x86-no_ssl.msi http://httpd.apache.org/download.cgi mysql-5.1.46-win32.msi http://dev.mysql.com/downloads/ php-5.2.13-Win32.zip http://www.php.net/downloads.php phpMyAdmin-3.3.3-all-languages.zip http://www.phpmyadmin.
最近開發social game,發現使用這個東西還是比較平凡,這裡做個總結,一來為自己留點記憶,另外希望對大家有協助. 首先來看看需求,如果我們開發facebook上social game,需要調用它的介面來獲得使用者在facebook上的好友資訊。這個時候我們就要訪問facebook提供的一個地址呢,當然你在訪問他的時候,他需要對你的訪問做驗證,防止非法請求。這個時候就得向其post|get一些參數。 如下面的地址: 複製代碼 代碼如下:$url_with_get=
複製代碼 代碼如下:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title>投票結果</title> <meta http-equiv="content-type" content="text/html; charset=utf-8"
複製代碼 代碼如下:function getSubComments($parent = 0, $level = 0) { $db = &JFactory::getDBO(); $sql = "..."; // 查詢記錄的SQL $db->setQuery($sql); $rows = $db->loadObjectList(); $list = array(); // 先從資料得到記錄集,再對記錄添加level, 父層level = 0,它的下級level = 1,如此類推
今天,'大型伺服器'模式已經過去,取而代之的是大量的小伺服器,使用各種各樣的負載平衡技術。這是一種更可行的方法,將使硬體成本降至最低。 '更多小伺服器'的優勢超過過去的'大型伺服器'模式體現在兩個方面: 1. 如果伺服器宕機,那麼負載平衡系統將停止請求到宕機的伺服器,轉而分發負載到其他正常啟動並執行伺服器上。 2. 擴充你的伺服器更加容易。你要做的僅僅是加入新的伺服器到負載平衡系統。不需要中斷你的應用運行。 所以,把握住這個機會:).
(1)所有資料都應該隱藏在所在的類的內部。 (2)類的使用者必須依賴類的共有介面,但類不能依賴它的使用者。 (3)盡量減少類的協議中的訊息。 (4)實現所有類都理解的最基本公有介面[例如,拷貝操作(深拷貝和淺拷貝)、相等性判斷、正確輸出內容、從ASCII描述解析等等]。 (5)不要把實現細節(例如放置共用代碼的私人函數)放到類的公有介面中。 如果類的兩個方法有一段公用代碼,那麼就可以建立一個防止這些公用代碼的私人函數。 (6)不要以使用者無法使用或不感興趣的東西擾亂類的公有介面。
整理出來2個給大家學習學習 1、三個等號和二個等號的區別 "===" VS "==" 比如你一個函數會返回這幾種情況: 1、大於0的數 2、小於0的數 3、等於0的數(也就是0啦) 4、False(失敗時) 這時候如果你想捕獲失敗的情況,你就必須用===,而不能用== 因為==除了會匹配第4種情況外,還會匹配第3種情況,因為0也是假! 在來一個 $a='2';//字元型2 $b=2;//數值型2 $a==$b,是對的,都是2
複製代碼 代碼如下:// $rptype = 0 表示僅替換 html標記 // $rptype = 1 表示替換 html標記同時去除連續空白字元 // $rptype = 2 表示替換 html標記同時去除所有空白字元 // $rptype = -1 表示僅替換 html危險的標記 function HtmlReplace($str,$rptype=0) { $str = stripslashes($str); if($rptype==0) { $str =
偽造referer執行個體代碼,主要用於一些突破防盜鏈,比片,軟體等等 這裡就直接給出完整的程式吧,具體的應用可以自己修改。 我這裡給出的例子是很簡單的,其實可以從這個例子中發展出很多的應用。比如隱藏真實的URL地址……嘿嘿,具體的就自己分析去吧 這裡建立一個檔案file.php。後面的參數就是需要偽造referfer的目標地址吧。如:file.php/http://www.xxx.xxx/xxx.mp3 複製代碼 代碼如下:<? $url=str_replace('/file.php/'
1、串連MYSQL資料庫代碼 <?php $connec=mysql_connect("localhost","root","root") or die("不能串連資料庫伺服器: ".mysql_error()); mysql_select_db("liuyanben",$connec) or die ("不能選擇資料庫: ".mysql_error()); mysql_query("set names 'gbk'"); ?> 2、讀取資料庫,並實現迴圈輸出 <?php
尤其像知道哪些蜘蛛對本站進行了訪問,訪問的頻度,頁面,普通的網站統計都是無法解決的。 雖然我對PHP瞭解的很少,但是憑藉.NET的開發經驗,藉助百度仍然很快的完成了,雖然簡單,大家莫笑。 複製代碼 代碼如下:// 插入SHOPEX首頁index.php代碼塊中 // 查看PHP中的變數其實挺簡單的 // 用一個函數 phpinfo() 足以查看 $fp = fopen("log.txt","a+"); fwrite($fp,date("Y-m-d H:i:s"));
書中的例子都比較淺顯易懂,不過由於是外國佬寫的,所以例子的習慣不是很附合中國特色,可能偶爾看起來有些彆扭,還有語言習慣也不是中國風。當然��看過這本書之後,你才能深刻理解設計模式到底能為你解決哪些問題,不能為你解決哪些問題(比如不能代替你的編碼)。 我將書中部分代碼改成PHP,看下代碼再配合概念應該是比較容易理解了。 策略模式 複製代碼 代碼如下:<?php /** * 策略模式 * 定義了演算法族,分別封裝起來,讓它們之間可以互相替換, *