原创 redis問題筆記

alldata(sMembers) —— 如果key不存在返回 空數組而不是false     zadd:增加一個或多個元素,如果該元素已經存在,更新它的socre值,返回 0(返回:被成功添加的新成員的數量)     有序集合:有序

原创 strpos函數的坑

$a = '111111,222222'; $b = 222; // $b = strval($b); var_dump(strpos($a, $b));// false 函數使用注意,傳入變量需轉成字符串

原创 linux - awk 匹配括號 裏面 內容

匹配括號內容到文件,並重定向到其他文件,$2  還是  $4還需看實際情況: awk -F "[()]" '{print $2}' filename  > data.txt [()] - 正則表達式,"("  或者 ")"  代表分隔符

原创 isset 與 array_key_exists

isset() 對於數組中爲 NULL 的值不會返回 TRUE,而 array_key_exists() 會 $a = ['aa' => null]; var_dump(isset($a['aa']));// bool(false)

原创 $_POST 與 php://input

總結: 當 HTTP POST 請求的 Content-Type 是 application/x-www-form-urlencoded:php://input 中是形同 a=1&b=2的原始數據。$_POST 中是關聯數組(常規的pos

原创 幾種常見的content-type

content-type作用:     在請求中 (如POST 或 PUT),客戶端告訴服務器實際發送的數據類型     在響應中,Content-Type標頭告訴客戶端實際返回的內容的內容類型,從而進行相應處理 1、Content-Ty

原创 trait用法

       Trait是一種代碼複用技術,爲PHP的單繼承限制提供了一套靈活的代碼複用機制。 當有一個方法需要在很多的類中使用時,該怎麼處理?     通常一般的處理方式會是,寫一個基礎類,在基類中實現這個方法,然後所有類都繼承這個基類

原创 記php curl一次奇怪的報錯

報錯:Peer certificate cannot be authenticated with known CA certificates 但是url輸入到瀏覽器又能正確請求。   解決辦法,改成如下: CURLOPT_SSL_VERI

原创 array_diff注意點

1、array_diff 是對比兩個(或以上數組)的值的差集,注意是對比數組的值,和數組的鍵無關 2、是以第一個數組爲對比對象,找上在第一個數組裏有但其他數組裏沒有的值(可以同值但不同鍵的多個) <?php $arr =

原创 簡述下php的垃圾回收機制

簡單描述:php中的變量存儲在變量容器zval中(c結構體),zval中除了存儲變量類型和值外,還有is_ref和refcount字段。refcount表示指向變量的元素個數,is_ref表示變量是否有別名。如果一個zval的refcou

原创 preg_replace與preg_replace_callback

// preg_replace // 刪除空格 $str = 'runo o b'; $str = preg_replace('/\s+/', '', $str); // 將會改變爲'runoob' echo $str; // p

原创 php常見的魔術方法

__construct:每次創建新對象時先調用此方法,所以非常適合在使用對象之前做一些初始化工作 __destruct:對象的所有引用被null、被顯式銷燬、對象用完時執行。(1 對象被null、2 對象被unset、3 對象用完自動觸

原创 依賴注入(DI)、控制反轉和容器

依賴注入(DI):將依賴對象注入到某對象,實現方式一般是容器。是控制反轉的具體實現方式 控制反轉(IoC):某對象獲得依賴對象的方式反轉了,由主動創建方式反轉成被動注入。是依賴注入的思想原理 場景:一個類的實例化需要依賴另外一個類的場景

原创 ORM是什麼?自己實現的思路?

ORM:將數據映射到對象。操作對象來操作數據庫。類(model)映射到表,屬性映射到字段 自己實現思路: 定義父類,實現mysql連接、封裝CURD、事務 所有的Model都繼承父類,定義表名

原创 array_merge 和 數組 +

#前提:必須都是數組類型,如果其中一個是null,會產生bug #索引數組 $arr1 = [1 => 'one', 3 => 'three']; $arr2 = [1 => 'new one', 6 => 'six']; $resu