標簽‘php’

php函數之值傳遞&引用傳遞

由于工作忙碌,博客已經斷更整一年,最近終于抽出點時間,來分享一些近一年經歷中印象深刻的經歷。

大概三年前,曾經整理過這樣兩篇文章《JavaScript函數究竟是值傳遞還是引用傳遞?》、《Java方法究竟是值傳遞還是引用傳遞?》,不為別的,只因為在工作中有人遇到類似問題,查閱資料后加以整理。巧的是,前陣子做php的同事又造出了相似的bug,不同的是,php并不像前兩者一切皆值傳遞。

在php的世界里,存在傳值和傳引用兩種方式

查看更多...

使用cPanel主機部署基于composer、laravel的Web應用

因為希望在閑置cPanel主機上部署composer、laravel應用,簡單記錄一下(并非cPanel使用教程)。

1、登錄cPanel,在Domains一欄找到“附加域”,按照常規添加我們要綁定的域名,生成站點目錄。
2、SSH登錄cPanel主機(ip為主機ip,共享、獨享都可以,賬戶、密碼復用cPanel的賬戶、密碼),測試是否有全局安裝composer。
3、FTP或者SFTP連接主機,上傳必要文件,composer install/update,如果速度過慢,可以參照本地開發時做法,執行composer config -g repo.packagist composer https://packagist.phpcomposer.com,隨后繼續直至安裝完畢。 查看更多...

簡易NodeJS、PHP跨域代理[Restful請求]

最近測試一些東西,需要跨域訪問Restful接口,因為是測試,不可能改變接口形式,所以jsonp方案直接Pass。

本地測試時簡單寫了幾行NodeJS代碼,對特定路徑下的請求進行轉發后回傳,因為使用WebStorm開發,NodeJS不可以和WebStorm內置服務器使用相同端口,雖然可以通過配置本地服務器,完全將NodeJS作為服務器,但那樣需要解決靜態資源的輸出,寫東西過多,偏離初衷,這里不再贅述。

不過如果你是做前后端完全分離的項目,大可以找個開源的Web框架來用,比如express等,這里不多介紹。

總之但思路就這樣了,可能不太完善,代碼如下: 查看更多...

兩行代碼繞過基于referrer的防盜鏈

去年年底,微信公眾號對圖文消息內的圖片做了防盜鏈設置,但驗證發現業務域名下引用微信公眾號圖文還不受影響,以為做了白名單處理,不料近期發現所有自己網站的頁面都不能正常顯示圖片,而是顯示微信的防盜鏈提示。

由于業務需要,公司產品通過微信公眾平臺提供的接口創建、維護圖文,大概去年8月15號,圖文創建接口對非官方圖片鏈接做了過濾,無奈將所有素材上傳至微信,與此同時,我們自己也有頁面需要顯示對應圖文信息,面對微信的防盜鏈屏蔽,想過維護兩個圖片路徑,本地圖文顯示時替換為本地圖片URL,后面感覺這樣太影響效率,為了緊急修復圖片不能顯示的問題,遂通過簡單的代碼繞過了微信防盜鏈。

下面是核心代碼(PHP) 查看更多...

PHP掛QQ小程序分享,要的自取

小程序啥作用,不說了,這玩意代碼很爛,也沒心情整理了,畢竟不是我自己寫的,記得是三四年前對PHP還不是很熟的時候在網上找的,然后改巴改巴自己就用了。

也不知道最近兩年怎么了,平均每個月都有那么一二十個人找我要掛QQ程序,因為要工作,實在沒空,所以在csdn上面上傳了打包的程序,后面有人找我要程序一般都是直接給csdn鏈接,但是目前上班上不了PC版QQ,發信息還好說,發鏈接我哪記得住呢?

索性,單獨開一頁面,給玩QQ掛機的小童鞋們下載吧。

補充一下,這次打包的文件是今晚稍作修改的,之前csdn的文件忘記是在5.3還是5.4版本以上的有異常,因為用到了已廢棄的函數,已經簡單替換了新函數。 查看更多...

多說插件在PHP5.3環境下出錯實為函數規范所致

春節終于過去了,回來直接上班一周,總算可以緩口氣過個周末了。順便寫下農歷新年第一篇。

回歸正題,雖然是元宵節+情人節,晚上依照慣例登上服務器看看博客,才想起年前博客因為遷移VPS出問題,暫時放回了早些時候用的虛擬主機,上去一看,發現5G的網站空間居然占滿了,回想之前遇到過哦 1G多錯誤日志的情況,仔細一看,還真是php的error.log。足足4G+的大小,果斷刪了,過了一會在刷新,出現新的錯誤文件,打開發現有plugins/duoshuo/WordPress.php on line 439錯誤十幾行,以為是多說的問題,搜了下才知道,原來是新版php不建議使用split的緣故。可能虛擬機的服務商把php升級了,所以出現這樣的問題。而之前是自己配的VPS,用的還是5.2,。

下面是找到的資料,順手也羅列出來,供大家參考。

PHP5.3 split() 不建議使用的原因:

PHP 5.3.0 之后的regex, 希望使用PCRE 的規格, POSIX Regex 查看更多...

一個讓人疑惑的PHP編碼問題的解決

首先聲明,小子不是專搞php的,所以對于下文所提及的問題可能是常見的,但出于是新手的原因,這里不太明白。

問題起源:數月前在博友哪里看到一套php寫的在線掛QQ小程序,就是通過定時刷新登陸3GQQ實現掛機的那種。修改后講程序扔主機上并把自己收藏多年的幾個QQ掛了起來,就這樣一直相安無事,很正常運行也從沒出現過亂碼問題。

問題表現:出現問題是很偶然的一次打開頁面,因為很久沒打開了,打開還以為是加載緩存問題,結果無聊怎么刪除緩存重新加載、刷新,都是無果,出現令人無語的亂碼。隨便看了下找不出問題,而且我很明確的知道我沒有動過原文件。 查看更多...

總結50余條提高PHP效率的要點

用單引號代替雙引號來包含字符串,這樣做會更快一些。因為PHP會在雙引號包圍的字符串中搜尋變量,單引號則不會,注意:只有echo能這么做,它是一種可以把多個字符串當作參數的“函數”(譯注:PHP手冊中說echo是語言結構,不是真正的函數,故把函數加上了雙引號)。

1、如果能將類的方法定義成static,就盡量定義成static,它的速度會提升將近4倍。

2、$row[’id’] 的速度是$row[id]的7倍。

3、echo 比 print 快,并且使用echo的多重參數(譯注:指用逗號而不是句點)代替字符串連接,比如echo $str1,$str2。
查看更多...

常用php正則表達式匯總備忘

最近為了防止純英文垃圾評論,寫函數替換,這里用到了正則表達式,于是網上收集了一些,供大家參考了。
元字符及其在正則表達式上下文中的行為:
\ 將下一個字符標記為一個特殊字符、或一個原義字符、或一個后向引用、或一個八進制轉義符。
^ 匹配輸入字符串的開始位置。如果設置了 RegExp 對象的Multiline 屬性,^ 也匹配 ’\n’ 或 ’\r’ 之后的位置。
$ 匹配輸入字符串的結束位置。如果設置了 RegExp 對象的Multiline 屬性,$ 也匹配 ’\n’ 或 ’\r’ 之前的位置。
* 匹配前面的子表達式零次或多次。
+ 匹配前面的子表達式一次或多次。+ 等價于 {1,}。
? 匹配前面的子表達式零次或一次。? 等價于 {0,1}。
{n} n 是一個非負整數,匹配確定的n 次。
{n,} n 是一個非負整數,至少匹配n 次。 查看更多...

好用的PHP遠程下載文件源碼

最近兩天主機有些不穩定,于是有了把現有文件傳到備用主機上同步使用的想法,但是由于備用主機數據有將近10個月沒有更新了,需要下載上傳文件很多,加上WordPress程序、數據庫都沒有更新,最近又更改了大量程序設置,無奈只有備份數據庫并打包站內全部文件,但是網絡不給力,下載下來再上傳就太麻煩了。

小子是越來越懶了,之前曾經通過cPanel主機的wget遠程同步數據,但是這樣在我的備用主機上可不適用。于是,就找了下php的遠程下載程序,用來干什么大家自己決定吧。

工具很簡單,界面如圖所示,輸入資源地址就行了。

程序如下: 查看更多...

黑龙江22选5开奖