PHP的foreach中使用引用時(shí)需要注意的一個(gè)問(wèn)題和解決方法
一、問(wèn)題先看一個(gè)例子:<?php$ar = array(1, 2, 3);var_dump($ar);foreach ($ar as &$v) {}foreach ($ar as $v) {}var_dump($ar);?>輸出為:array(3) { [0]=> int(1) [1]=> int(2) [2]=> int(3)}array(3) { [0]=>...
|
一、問(wèn)題先看一個(gè)例子:<?php$ar = array(1, 2, 3);var_dump($ar);foreach ($ar as &$v) {}foreach ($ar as $v) {}var_dump($ar);?>輸出為:array(3) { [0]=> int(1) [1]=> int(2) [2]=> int(3)}array(3) { [0]=>...
先來(lái)說(shuō)說(shuō)php變量的命名規(guī)則,百度下一抓一大把:(1) PHP的變量名區(qū)分大小寫(xiě);(2) 變量名必須以美元符號(hào)$開(kāi)始;(3) 變量名開(kāi)頭可以以下劃線開(kāi)始;(4) 變量名不能以數(shù)字字符開(kāi)頭.其實(shí)所有編程都類似的命名規(guī)范就是:1. 變量第一...
開(kāi)始之前,首先要澄清兩個(gè)問(wèn)題:第一,支持開(kāi)源,不等于反對(duì)代碼加密;第二,如果把不屬于自己的東西(比如公司的)拿去開(kāi)源,就更加不應(yīng)該了。以前知道的,PHP代碼的加密都是用Zend的encoder,這東西不但是商業(yè)軟件,好像還暴出過(guò)能夠被破解...
自己用的小PHP應(yīng)用,使用curl抓網(wǎng)頁(yè)下來(lái)處理,為了穿墻方便,使用Privoxy作為代理,便于選擇哪些網(wǎng)站使用proxy、哪些不用。但今天卻遇到了奇怪的問(wèn)題,訪問(wèn)google baidu這些網(wǎng)站居然都返回403錯(cuò)誤,而訪問(wèn)其他的一些網(wǎng)站沒(méi)事,如果...
is_subclass_of的作用:復(fù)制代碼 代碼如下:bool is_subclass_of ( object object, string class_name )如果對(duì)象 object 所屬類是類 class_name 的子類,則返回 TRUE,否則返回 FALSE。注: 自 PHP 5.0.3 起也可以用一個(gè)字符...
PHP的數(shù)組,數(shù)組中的內(nèi)容大致如下:復(fù)制代碼 代碼如下:$list = array( array(2,3,5), array(2,5,24), array(3,8,6), array(3,2,10), array(4,7,20), array(4,1,15), array(6,4,10), array(7,9,2...
首先為什不自己分別搭建Apache,PHP和MySql的環(huán)境呢?這樣自己可以了解更多知識(shí),說(shuō)起來(lái)也更酷。可也許因?yàn)槲覒邪桑沂悄欠N“既然有現(xiàn)成的,用就是了”的人。君子生非異也,善假于物也。兩千年前的荀子就教導(dǎo)我們,要善于利用工具...
一般來(lái)說(shuō), 我們可以通過(guò)直接讓URL指向一個(gè)位于Document Root下面的文件, 來(lái)引導(dǎo)用戶下載文件.但是, 這樣做, 就沒(méi)辦法做一些統(tǒng)計(jì), 權(quán)限檢查, 等等的工作. 于是, 很多時(shí)候, 我們采用讓PHP來(lái)做轉(zhuǎn)發(fā), 為用戶提供文件下載...
PHP建圖通常都用GD庫(kù),因?yàn)槭莾?nèi)置的不需要在服務(wù)器上額外安裝插件,所以用起來(lái)比較省心,但是如果你的程序主要的功能就是處理圖像,那就不建議用GD了,因?yàn)镚D不但低效能而且能力也比較弱,用的系統(tǒng)資源也頗多,另外GD的crea...
1.可以使用func_get_args()和func_num_args()這兩個(gè)函數(shù)實(shí)現(xiàn)函數(shù)的重載!!PHP代碼:復(fù)制代碼 代碼如下:function rewrite() { $args = func_get_args(); if(func_num_args() == 1) {...
1.檢測(cè)Apache是否支持mod_rewrite通過(guò)php提供的phpinfo()函數(shù)查看環(huán)境配置,通過(guò)Ctrl+F查找到“Loaded Modules”,其中列出了所有apache2handler已經(jīng)開(kāi)啟的模塊,如果里面包括“mod_rewrite”,則已經(jīng)支持,不再需要繼續(xù)設(shè)置。...
1、 用單引號(hào)代替雙引號(hào)來(lái)包含字符串,這樣做會(huì)更快一些。因?yàn)?PHP 會(huì)在雙引號(hào)包圍的 字符串中搜尋變量,單引號(hào)則不會(huì),注意:只有 echo 能這么做,它是一種可以把多個(gè)字符 串當(dāng)作參數(shù)的“函數(shù)”(譯注:PHP 手冊(cè)中說(shuō) echo 是語(yǔ)言...
核心代碼: 復(fù)制代碼 代碼如下:<!--?php$html2RTFCom = new COM("HTML2RTF.Converter");$html2RTFCom--->PreserveImages = true;$html2RTFCom->PageNumbers = 1;$html2RTFCom->PageNumbersAlignH = 1;$html2RTFCom->Pa...
有的win主機(jī)IIS不支持 .htaccess 文件, 我在這里指的不是本地 在本地的話用apmserv服務(wù)器可以用.htaccess 文件,用apmserv服務(wù)器環(huán)境配置偽靜態(tài)可以看 php 偽靜態(tài) (url rewrite mod_rewrite 重寫(xiě)) 這篇文章,講的很詳細(xì)....
舉一個(gè)案例:復(fù)制代碼 代碼如下:<?phpclass Downfile {
function downserver($file_name){$file_path = "./img/".$file_name;//轉(zhuǎn)碼,文件名轉(zhuǎn)為gb2312解決中文亂碼$file_name = iconv("utf-8","gb2312",$file_name...
upload.php復(fù)制代碼 代碼如下:<?phpif(isset($_FILES["myfile"])){$ret = array();$uploadDir = 'images'.DIRECTORY_SEPARATOR.date("Ymd").DIRECTORY_SEPARATOR;$dir = dirname(__FILE__).DIRECTORY_SEPARATOR.$upl...
一般情況下對(duì)URL進(jìn)行UrlEncode 處理 , urlencode(),urldecode();
也可以通過(guò)iconv('utf-8', 'gb2312', $ret)對(duì)接收到的數(shù)據(jù)進(jìn)行編碼轉(zhuǎn)換。...
php數(shù)組中文排序,文件格式一般用utf8,直接用asort排序不行。若是gbk和gb2312可以。這跟編碼有關(guān)。gbk和gb2312本身的編碼就是用拼音排序的。復(fù)制代碼 代碼如下:function utf8_array_asort(&$array) {if(!isset($array)...
本文記錄的要實(shí)現(xiàn)的功能類似于 MySQL 中的 ORDER BY,上個(gè)項(xiàng)目中有遇到這樣的一個(gè)需求。
要求:從兩個(gè)不同的表中獲取各自的4條數(shù)據(jù),然后整合(array_merge)成一個(gè)數(shù)組,再根據(jù)數(shù)據(jù)的創(chuàng)建時(shí)間降序排序取前4條。
遇到這個(gè)...
復(fù)制代碼 代碼如下: $act=!empty($_GET['act']) ? trim($_GET['act']) : ''; switch($act) { case 'adda': $area['a_value'] = trim($_POST['a_value']); $area['a_type']=3; if(strpos($area['a_value&...
廢話不多說(shuō)直接上代碼復(fù)制代碼 代碼如下:/********************** curl 系列 ***********************///直接通過(guò)curl方式取得數(shù)據(jù)(包含POST、HEADER等)/* * $url: 如果非數(shù)組,則為http;如是數(shù)組,則為https * $header:...
本文為代碼分享,也是在工作中看到一些“大牛”的代碼,做做分享。
具體是這樣的,如下一個(gè)二維數(shù)組,是從庫(kù)中讀取出來(lái)的。
代碼清單: 復(fù)制代碼 代碼如下: $user = array( 0 => array( 'id' => 1, 'name' => '張三', 'ema...
PHP代碼:復(fù)制代碼 代碼如下:#!/usr/bin/php -q<?php/** * PHP Script For Google Translate * @author:Yishan Wang * @version:1.0.0 */class Google_API_translator{ public $url = "http://translate.google.com/t...
以前從來(lái)沒(méi)寫(xiě)過(guò)遞歸(其實(shí)想想,對(duì)算法完全沒(méi)概念),剛好有這個(gè)需求,試著寫(xiě)了一下,發(fā)現(xiàn)也挺容易的,特別記錄一下。數(shù)據(jù)庫(kù)是dedecms默認(rèn)的,dede_arctype是保存欄目的表,reid是欄目的父級(jí)欄目id。復(fù)制代碼 代碼如下:$array = array(...
1、簡(jiǎn)介Smarty是一個(gè)使用PHP寫(xiě)出來(lái)的模板PHP模板引擎,是目前業(yè)界最著名的PHP模板引擎之一。它分離了邏輯代碼和外在的內(nèi)容,提供了一種易于管理和使用的方法,用來(lái)將原本與HTML代碼混雜在一起PHP代碼邏輯分離。簡(jiǎn)單的講,目...