用PHP代替JS玩轉DOM的思路及範例程式碼

   事情的起源比較簡單,我需要把一個導航頁的資料整理好寫入資料庫。一個比較直觀的方法是對html檔案進行分析,通用的方法是用php的Regex來匹配。但是這樣做開發和維護都很困難,代碼可讀性非常差。  導航頁的資料都是規則的排列在DOM樹當中的,用JS可以用幾個迴圈輕鬆的對其進行操作,而且JS需要依賴瀏覽器,操作資料庫很困難。其實PHP就有現成的類庫對DOM樹種的節點進行增刪改查操作,在此做一些筆記。  這裡涉及到2個類 DOMDocument 和

如何學習PHP array

 定義和用法array_diff_uassoc() 函數使用使用者自訂的回呼函數 (callback) 做索引檢查來計算兩個或多個數組的差集。返回一個數組,該數組包括了在 array1 中但是不在任何其他參數數組中的值。注意,與 array_diff() 函數 不同的是,鍵名也要進行比較。參數 function 是使用者自訂的用來比較兩個數組的函數,該函數必須帶有兩個參數 - 即兩個要進行對比的鍵名。因此與函數array_diff_assoc()

PHP禁止頁面緩衝的方法

   比如我有3個頁面,1.購物車 2.訂單地址和付款條件 3.顯示訂單產生2 -> 3的時候,就插入訂單資料,產生訂單資訊以及訂單下的商品,並且清空購物車對應商品資料。  肯定不希望使用者到了最後一個頁面,都已經產生訂單了,再點瀏覽器的返回按鈕回到前一個頁面。  那麼在訂單地址頁面加入:  header("Cache-Control:no-cache,must-revalidate,no-store");

php中json

   1.json_encode()中文在gbk/gb2312中中文返回為null  代碼如下   $arr = array (    array (        'catid' =>

php使用Regex提取字串中角括弧、小括弧、中括弧、大括弧中的字元

 PHP使用Regex提取字串中角括弧<>、小括弧()、中括弧[]、大括弧{}中的字元樣本,需要的朋友可以參考下  代碼如下:$str="你好<我>(愛)[北京]{天安門}";  echo f1($str); //返回你好 echo f2($str); //返回我 echo f3($str); //返回愛 echo f4($str); //返回北京 echo f5

php安全執行緒編譯解決方案

   php 安全執行緒編譯  網上這麼說:先安裝php5,加上--maintainer-zts  然後安裝pthreads  cd /usr/local/src/  wget http://pecl.php.net/get/pthreads-2.0.5.tgz  tar zxvf pthreads-2.0.5.tgz  cd pthreads-2.0.5  /usr/local/php5.5.12-zts/bin/phpize  ./configure

php中如何?回刪功能

 php中怎麼實現回刪功能function del(){var input=document.getElementsByName('inp')[0].value;alert(input.constructor);}</script><table><tr><td onclick="inpu(1)">1</td><td onclick="inpu(2)&q

PHP擷取表單步驟總結

  PHP擷取表單方法總結php接受通過HTML表單提交的資訊時,會將提交的資料儲存在全域數組中,我們可以調用系統特定的自動全域變數數組來擷取這些值。常用的自動全域變數如下所示:$_GET$_POST$_REQUEST      在擷取表單資料中,最常用的自動全域變數是$_GET和$_POST,它們分別擷取通過GET方法提交的資料和通過POST方法提交的資料。  

PHP filemtime() 函數

 定義和用法filemtime() 函數返迴文件內容上次的修改時間。若成功,則時間以 Unix 時間戳記的方式返回。若失敗,則返回 false。文法filemtime(filename) 參數描述 filename    必需。規定要檢查的檔案。    說明本函數返迴文件中的資料區塊上次被寫入的時間,也就是說,檔案的內容上次被修改的時間。提示和注釋提示:本函數的結果會被緩衝。請使用 clearstatcache()&

PHP逐字拆分字串的兩種方法

 方法一: <?php $str="網頁吧:http://www.wangyeba.com"; function mbstringtoarray($str,$charset) {     $strlen=mb_strlen($str);     while($strlen){

PHP session常見問題集錦及解決辦法

   PHP session常見問題集錦及解決辦法:  1.  錯誤提示  Warning: Cannot send session cookie - headers already sent  Warning: Cannot send session cache limiter - headers already

PHP如何產生靜態頁面的函數

 如何產生靜態頁面的函數:<?phpfunction CreateShtml(){ob_start("callback_CteateShtml");}function callback_CteateShtml(buffer){page = intval(@_REQUEST["page"]);//fileName = _SERVER['DOCUMENT_ROOT'] . dirname(_SERVER['PHP_SELF']) . &

提高PHP開發效率的技巧

   最近站長本人也在學習PHP,所以整理點PHP開發中的一些小技巧出來供大家學習。  0、用單引號代替雙引號來包含字串,這樣做會更快一些。因為PHP會在雙引號包圍的字串中搜尋變數,單引號則不會,注意:只有echo能這麼做,它是一種可以把多個字串當作參數的“函數”(譯註:PHP手冊中說echo是語言結構,不是真正的函數,故把函數加上了雙引號)。  1、如果能將類的方法定義成static,就盡量定義成static,它的速度會提升將近4倍。  2、$row[&rsq

PHP產生自訂長度隨機字串的函數

   這篇文章主要介紹了PHP產生自訂長度隨機字串的函數分享,需要的朋友可以參考下  php隨機產生字串可以自己定義自己所需要的長度,在實際應用開發中,經常遇到。  代碼如下:  //隨機產生字串  function random($length) {  srand(date("s"));  $possible_charactors = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";  $string =

PHP怎麼插入資料庫

   PHP如何插入資料庫    $ostype=$_POST['ostype'];  $uuid=$_POST['uuid'];  $nowtime=time();  $username='XXXX';  $userpass='XXXX';  $dbhost='localhost';  $dbdatabase='XXX';  //產生一個串連  $db_connect=mysql_connect($dbhost,$username,$userpass) or

PHP按行讀取檔案時刪除分行符號的3種方法

   這篇文章主要介紹了PHP按行讀取檔案時刪除分行符號的3種方法,需要的朋友可以參考下  PHP按行讀取檔案 去掉分行符號”n”:  第一種:  代碼如下:$content=str_replace("n","",$content);  echo $content;  或者:  代碼如下:$content=str_replace(array("n","r"),""

PHP開發的AppServ教程

   近期接到院辦老師的一個項目,做PHP調研和輔助項目開發。以前,沒有接觸過PHP,在這裡做個瞭解以入門。  1、PHP  PHP,即Hypertext

php對特殊語句查詢結果進行數組排序

   資料庫查詢結果有時候不能直接使用,比如mysql等用in語句出來的結果,因此需要對結果進行某種方式的排序。例子 4. 對資料庫結果進行排序本例中 data 數組中的每個單元表示一個表中的一行。這是典型的資料庫記錄的資料集合。   例子中的資料如下:   volume | edition   -------+--------   67 | 2   86 | 1   85 | 6   98 | 2   

PHP擷取當前日期前30天的日期列表的應用

   最近由於項目要求做一個統計功能,統計當前日期之前的前30天的記錄。功能挺簡單,下面將本次實現的方法和大家分享一下,方便有需要的朋友們。  其實主要就是用到了php的strtotime這個函數,strtotime('n day'),樣本如下:  $days=array();  for($i=0;$i<=7;$i++){//這裡數字根據需要變動  $days[]=date("Y-m-d",strtotime('-'.$i.'day'));  }//http:

PHP如何擷取一段時間內的日期列表

  最近在做一個關於議程表的項目,給出一個開始時間和一個結束時間,需要列出這個時間段內的日期列表並同時判斷是周幾。經過研究,得出如下方法,和大家共用,方便有需要的朋友。  先貼一下此次需求的效果圖:  下面是具體的程式碼片段:  /*  *參數分別是開始時間戳,結束時間戳記  */  function

總頁數: 1662 1 .... 402 403 404 405 406 .... 1662 Go to: 前往

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.