m和php
⑴ php中,M方法到底什麼意思
先解釋你這段代碼的意思:
$model=M("Column");
//創建一個Column模型,對應資料庫中的Column表,如果有前綴就是前綴_Column表
$columninfo=$model->field("pid,image")->where("id=".$pid)->find();
//設定查詢欄位為pid和image,條件是id=$pid
//find()方法是找出一條數據
//$columninfof是一個數組返回值,起結構為array('pid'=>"***",'image'=>"***")
M在TP中是創建一個模型的函數,是自己寫的函數,不是php的內置函數。
如果還有不明白歡迎追問
⑵ $m = M() php 是什麼意思
可以解釋為類和對象定義體系中的構造函數。比如
class M{}
$m=M();
⑶ php裡面的一個問題,里函數經常有M 、I 這一類的代表什麼來的呢
看你的代碼應該用的是thinkphp框架,M和I是你用的框架中的方法,M代表把你的資料庫模型實例化,I代表的是網路傳值(get或者post方式傳值),php沒有這樣的系統函數,只是你用的框架自定義的方法
⑷ 請問這段php代碼中的 +$m是如何運行的
這是遞歸調用來,sum函數自的運行流程是這樣的,它會先比較參數$n和$m的值,如果$m<=$n,它會返回$n,否則它就把$m減1後再次調用自身,這樣逐層調用,直到$n不小於$m,然後它會逐層返回,並與每層的$m值相加。這實際上就是一個累加器。
打個比方,現在運行 sum(1, 3),那麼
$n=1, $m=3
因為$m>$n,它會執行 return sum(1, 2) + 3
這樣sum(1, 2)會再次運行
$n=1, $m=2
因為$m>$n,它會執行 return sum(1, 1) + 2
這樣sum(1, 1)會再次運行
$n=1, $m=1
因為$m<=$n,它會執行 return 1
然後是 return 1 + 2
最後是 return 3 + 3
所以最後的結果是6,也就是說 sum(1, 3) = 1 + 2 + 3 = 6
同理 sum(1, 100) 就是計算 1 到 100 的累加和
⑸ php中if(!$m)什麼意思
$m是個變百量,在php裡面定義變數的時候必須在前面加上$符號。if是判斷的意思。度
!是非的意思,是指如果專$m為true那麼就取false,如果$m為false,那麼就取true。
PHP可以與很多主流的資料庫建立起連接,如MySQL、ODBC、Oracle等,PHP是利用編譯的不同函數與這些資料庫建立起連接的,PHPLIB就是常用的為一般事務提供的基庫。
在PHP語言的使用中,可以分別使用面向過程和面向對象, 而且可以將PHP面向過程和面向對象兩者一起混用,這是其它很多編程語言是做不到的。
(5)m和php擴展閱讀:
(一)PHP的解釋運行機制
在 PHP 中,所有的變數都是頁面級的,無論是全局變數, 還是類的靜態成員,都會在頁面執行完畢後被清空。
(二)設計缺陷,缺少關注PHP被稱作是不透明的語言,因為沒有堆棧追蹤,各種脆弱的輸入。沒有一個明確的設計哲學。早期的PHP受到Perl的影響,帶有out參數的標准庫又是有C語言引入,面向對象的部分又是從C++和Java學來的。
(三)對遞歸的不良支持
PHP並不擅長遞歸。它能容忍的遞歸函數的數量限制和其他語言比起來明顯少。
⑹ thinkphp d和m的區別
您好,我來為您解答:
通俗點說,D就是實例化一個基於Model文件的Model,而M則是通過直接實例化Model方法(ThinkPHP基類)來動態的實例化一個Model對象,即使這個對應的Model文件不存在。
再通俗一點說就是,m實例化參數是資料庫的表名.
d實例化的是你自己在model文件夾下面建立的模型文件.
希望我的回答對你有幫助。
⑺ 為什麼PHP+mysql這么受推崇
一,L(linux)A(apache)M(mysql)P(php/perl/python)免費,適合大規范運用,如果百十來台機器都跑win server,那光操作系統和MSSQL的支出就很恐怖了
二,php容易入門,容易修改
三,LINUX/UNIX/BSD開源,編譯出來的平台性能比較高,而且,不需要桌面,省不少內存
php可以連接任何資料庫,比如adodb和php5內置的pdo,但是,因為像mssql不是開源的,沒法最大程度優化,所以一般性的都是php+mysql,對資料庫負載要求比較高的pgsql,對資料庫負載要求低一點的sqlite或者乾脆文本
⑻ PHP和MySQL Web開發 (原書第4版)中文版高清PDF下載 一般多大
我記得是70多M吧。
⑼ ThinkPHP中M方法與D方法有什麼區別
ThinkPHP 中M方法和D方法都用於實例化一個模型類,M方法 用於高效實例化一個基礎模型類,而 D方法 用於實例化一個用戶定義模型類。
使用M方法
如果是如下情況,請考慮使用 M方法:
對數據表進行簡單的 CURD 操作而無復雜的業務邏輯時
只有個別的表有較為復雜的業務邏輯時,將 M方法 與實例化 CommonModel 類進行結合使用
M方法 甚至可以簡單看著就是對參數表名對應的數據表的操作:
$User=M('User');
使用D方法
如果是如下情況,請考慮使用 D方法:
需要使用 ThinkPHP 模型中一些高級功能如自動驗證功能(create()方法中實現)、關聯模型等
業務邏輯比較復雜,且涉及的表眾多
將業務邏輯定義在了自定義的模型類裡面(Lib/Model目錄下),而想在操作中實現這些業務邏輯
另外 D方法 不支持跨項目調用,需要使用:
$User=D('User','Admin');//實例化Admin項目下面的User模型
$User=D('Admin.User');//啟用了項目分組
提示
啟用了項目分組後,Model 類並不必然對應著項目分組。多個項目組之間共有的模型類,統一放在 Model 目錄下,可以直接使用D('ModelName') 實例化。而 D('User.UserInfo') 並不表示 User 一定是一個項目分組,也可以僅僅是對 Model 下文件的一個分類目錄,D('User.UserInfo') 實例化的是 User 目錄下的 UserInfo 模型類。
總結
M方法 和 D方法 都可以在模型類文件不存在的情況下直接使用的,但顯然 M方法 更高效;但要使用模型類裡面業務邏輯,就必須使用 D方法。
一個比較形象的比喻就是:M方法 就如一台剛裝好操作系統的電腦,只能使用一些基本功能;而 D方法 就如在裝好的系統上再安裝了一些如 Office、QQ 等應用軟體,功能更加強大,同時整個電腦運行速度也變慢了。
以上是對 M方法和D方法區別的一些總結,M方法 和 D方法 要根據實際情況來具體選擇。