phpmysql學習心得,php總結心得

本文目錄一覽:

PHP MYSQL面向對象編程,不明白其具體意義何在?提高了性能、效率、重用?

把 mysql 與 php 的鏈接看做一個對象,這個對象負責php與mysql的交互。

其意義在於把資料庫的鏈接抽象成了對象,抽象的意義在於化繁為簡。

普通的那種方式,更像是一種行為,全都是行為由誰發出呢?由php語言本身?

面向對象的方式,則有這個對象發出!

談談你對 mysql 事務的認識 我是php初學者不懂這個 想請教大神教我

先簡單介紹一下事務吧!事務是DBMS得執行單位。它由有限得資料庫操作序列組成得。但不是任意得資料庫操作序列都能成為事務。一般來說,事務是必須滿足4個條件(ACID)

原子性(Autmic):事務在執行性,要做到「要麼不做,要麼全做!」,就是說不允許事務部分得執行。即使因為故障而使事務不能完成,在rollback時也要消除對資料庫得影響!

一致性(Consistency):事務得操作應該使使資料庫從一個一致狀態轉變倒另一個一致得狀態!就拿網上購物來說吧,你只有即讓商品出庫,又讓商品進入顧客得購物籃才能構成事務!

隔離性(Isolation):如果多個事務並發執行,應象各個事務獨立執行一樣!

持久性(Durability):一個成功執行得事務對資料庫得作用是持久得,即使資料庫應故障出錯,也應該能夠恢復!

MYSQL的事務處理主要有兩種方法。

1、用begin,rollback,commit來實現

begin

開始一個事務

rollback 事務回滾

commit 事務確認

2、直接用set來改變mysql的自動提交模式

MYSQL默認是自動提交的,也就是你提交一個QUERY,它就直接執行!我們可以通過

set autocommit=0

禁止自動提交

set autocommit=1 開啟自動提交

來實現事務的處理。

但注意當你用 set

autocommit=0

的時候,你以後所有的SQL都將做為事務處理,直到你用commit確認或rollback結束,注意當你結束這個事務的同時也開啟了個新的事務!按第一種方法只將當前的作為一個事務!

個人推薦使用第一種方法!

MYSQL中只有INNODB和BDB類型的數據表才能支持事務處理!其他的類型是不支持的!(切記!)

下次有空說下MYSQL的數據表的鎖定和解鎖!

MYSQL5.0 WINXP下測試通過~ ^_^

mysql use test;

Database

changed

mysql CREATE TABLE `dbtest`(

– id int(4)

– ) TYPE=INNODB;

Query OK, 0 rows affected, 1 warning (0.05

sec)

mysql select * from dbtest

– ;

Empty set (0.01

sec)

mysql begin;

Query OK, 0 rows affected (0.00

sec)

mysql insert into dbtest value(5);

Query OK, 1 row affected

(0.00 sec)

mysql insert into dbtest value(6);

Query OK, 1 row

affected (0.00 sec)

mysql commit;

Query OK, 0 rows affected (0.00

sec)

mysql select * from dbtest;

+——+

| id

|

+——+

| 5 |

| 6 |

+——+

2 rows in set (0.00

sec)

mysql begin;

Query OK, 0 rows affected (0.00

sec)

mysql insert into dbtest values(7);

Query OK, 1 row affected

(0.00 sec)

mysql rollback;

Query OK, 0 rows affected (0.00

sec)

mysql select * from dbtest;

+——+

| id

|

+——+

| 5 |

| 6 |

+——+

2 rows in set (0.00

sec)

mysql

*******************************************************************************************************************

[PHP]

function

Tran( $sql ) {

$judge = 1;

mysql_query(‘begin’);

foreach ($sql as $v) {

if

( !mysql_query($v) ) {

$judge =

0;

}

}

if ($judge == 0)

{

mysql_query(‘rollback’);

return

false;

}

elseif ($judge == 1) {

mysql_query(‘commit’);

return true;

}

}

[/PHP]

************************************************

?php

$handler=mysql_connect(“localhost”,”root”,””);

mysql_select_db(“task”);

mysql_query(“SET

AUTOCOMMIT=0″);//設置為不自動提交,因為MYSQL默認立即執行

mysql_query(“BEGIN”);//開始事務定義

if(!mysql_query(“insert

into trans (id)

values(‘2’)”))

{

mysql_query(“ROOLBACK”);//判斷當執行失敗時回滾

}

if(!mysql_query(“insert

into trans (id)

values(‘4’)”))

{

mysql_query(“ROOLBACK”);//判斷執行失敗回滾

}

mysql_query(“COMMIT”);//執行事務

mysql_close($handler);

?

引自:

PHP開發怎麼學習?PHP學習有沒有什麼方法?

一、學前準備

1、建議首先要對網站有個整體的認識,對做網站需要學習的知識要有個認識,從而確定自己的學習方向,不要學一半,又覺得自己似乎不適合學這個,而半途改道,這樣很浪費時間,也不是學技術的人該有的心態。

2、PHP是什麼網上有很多資料這裡不多說了,自己一定要好好看看。由於它是開源的可以從一些網站上下載很多源碼,甚至整站源碼。但是如果你想要學的好的話,很多東西東西都是自己設計,而不是二次開發。

3、強調一下php並不是想網上一些人說的那樣簡單,它只是語法簡單,深入還是要努力。

二、學習順序

(1)熟悉HTML/CSS/JS等網頁基本元素

(2)理解動態語言的概念,運做機制,熟悉PHP語法

(3)學習如何將PHP與HTML結合起來完成簡單動態頁面

(4)接觸MYSQL,開始設計資料庫程序,學會基本對資料庫的操作

(5)學會一個模版(建議是smarty),會話控制session和cookie,ajax

(6)繼續深入學會怎麼設計一個優秀的資料庫

三、學習方法總結

1, 學習資料:一本好的書籍+配套的視頻+幾個常用的網站

2, 開發工具:記事本,eclipse,Zend Studio 。

學習階段可以使用記事本,但是它的開發效率低,開發的時候要用到其他開發工具,eclipse,Zend

Studio是兩款最常用的工具。Eclipse是完全免費的產品,Zend

Studio(是一款集成開發軟體)是收費,但是它的破解方法很簡單。當然還有其他的開發軟體,自己可以挑選一個適合自己的。

3, 剛開始學習的時候基本上都會要學習lamp或者是wamp的環境的搭建,搭建環境的過程不是很多,但是可能會遇到很多問題(也可能你運氣好一次搭建好),千萬不要灰心,一定會解決的。

4, 在學習php的前期雖然用不到那麼多資料庫的知識,但是懂得怎麼使用它是很有必要的。等你可以開發網站後,設計一個好的資料庫就會成為一個成功的網站關鍵。

5, 在學習的過程中還要準備各種開發手冊,php手冊,mysql手冊,以及一些框架的手冊。

6, php是一種後台語言,但是在學習後台之前還需要學習前台語言,DIV+CSS,HTML,JavaScript,以及實現非同步傳輸的ajax。

7, 學習ajax基本上是必須,但是學習它之前最好學習了javascript和xml,這樣才能從本質上了解原理。

8,有很多軟體專門用來管理和設計資料庫,這個很方便但是你一定要懂得sql語言,才能更好的設計資料庫,以及在php中用對資料庫進行相關的操作。

9,eclipse默認是不能開發php的,需要你對它進行擴展。擴展後要安裝Xdebugger或者是Zend_Debugger,安裝以後才能進行調試,調試和java調試基本一樣。

10,在學習php的過程中一定會遇到很多問題,你一定會去查找各種資料或者是別人,但是很有可能你下次遇到還是不懂,所以這就需要你要把遇到過的問題和解決方法記錄下來。

學習IT類,不論是哪一類不能僅靠理論知識,實戰和項目(也就是多練習)是重點!

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/190030.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-11-29 13:53
下一篇 2024-11-29 13:53

相關推薦

  • PHP和Python哪個好找工作?

    PHP和Python都是非常流行的編程語言,它們被廣泛應用於不同領域的開發中。但是,在考慮擇業方向的時候,很多人都會有一個問題:PHP和Python哪個好找工作?這篇文章將從多個方…

    編程 2025-04-29
  • PHP怎麼接幣

    想要在自己的網站或應用中接受比特幣等加密貨幣的支付,就需要對該加密貨幣擁有一定的了解,並使用對應的API進行開發。本文將從多個方面詳細闡述如何使用PHP接受加密貨幣的支付。 一、環…

    編程 2025-04-29
  • Python培訓心得與總結

    隨著Python在Web開發、數據處理、AI等領域的日漸流行,越來越多的人開始學習Python。作為一門易學易用、功能強大的編程語言,Python吸引了無數開發者的關注。作為一名學…

    編程 2025-04-28
  • 使用PHP foreach遍歷有相同屬性的值

    本篇文章將介紹如何使用PHP foreach遍歷具有相同屬性的值,並給出相應的代碼示例。 一、基礎概念 在講解如何使用PHP foreach遍歷有相同屬性的值之前,我們需要先了解幾…

    編程 2025-04-28
  • PHP獲取301跳轉後的地址

    本文將為大家介紹如何使用PHP獲取301跳轉後的地址。301重定向是什麼呢?當我們訪問一個網頁A,但是它已經被遷移到了另一個地址B,此時若伺服器端做了301重定向,那麼你的瀏覽器在…

    編程 2025-04-27
  • PHP登錄頁面代碼實現

    本文將從多個方面詳細闡述如何使用PHP編寫一個簡單的登錄頁面。 1. PHP登錄頁面基本架構 在PHP登錄頁面中,需要包含HTML表單,用戶在表單中輸入賬號密碼等信息,提交表單後服…

    編程 2025-04-27
  • PHP與Python的比較

    本文將會對PHP與Python進行比較和對比分析,包括語法特性、優缺點等方面。幫助讀者更好地理解和使用這兩種語言。 一、語法特性 PHP語法特性: <?php // 簡單的P…

    編程 2025-04-27
  • PHP版本管理工具phpenv詳解

    在PHP項目開發過程中,我們可能需要用到不同版本的PHP環境來試驗不同的功能或避免不同版本的兼容性問題。或者我們需要在同一台伺服器上同時運行多個不同版本的PHP語言。但是每次手動安…

    編程 2025-04-24
  • PHP數組去重詳解

    一、array_unique函數 array_unique是php中常用的數組去重函數,它基於值來判斷元素是否重複,具體使用方法如下: $array = array(‘a’, ‘b…

    編程 2025-04-24
  • PHP導出Excel文件

    一、PHP導出Excel文件列寬調整 當我們使用PHP導出Excel文件時,有時需要調整單元格的列寬。可以使用PHPExcel類庫中的setWidth方法來設置單元格的列寬。下面是…

    編程 2025-04-24

發表回復

登錄後才能評論