㈠ 學習php網頁設計前提步驟
php是程序開發, 網頁設計 是美工方面
學php 不用必須學c的 ;不同的2個語言
掌握 php開發 不只是學 mysql和php的
必須掌握 html ,css,js,資料庫,php,mvc..........
從你問問題角度看 沒有任何基礎
如果是愛好 那麼自學點玩玩可以
如果是想成為程序員,在你那裡找個學校 學比較好,(這里不探討教學質量,假設培訓到位)
要知道通過培訓只要3個月 是可以掌握php相關技能,成為合格的程序開發人員的,
自學 摸著石頭過河 3個月是不會掌握 b/s開發 那麼多技術以及項目經驗的
好的學習方式才能事半功倍的
㈡ PHP有哪幾種設計模式
PHP 一般有五種常見的設計模式
工廠模式
工廠模式 是一種類,它具有為您創建對象的某些方法。您可以使用工廠類創建對象,而不直接使用 new。這樣,如果您想要更改所創建的對象類型,只需更改該工廠即可。使用該工廠的所有代碼會自動更改。
例如:
<?php
interface IUser
{
function getName();
}
class User implements IUser
{
public function __construct( $id ) { }
public function getName()
{
return "Jack";
}
}
class UserFactory
{
public static function Create( $id )
{
return new User( $id );
}
}
$uo = UserFactory::Create( 1 );
echo( $uo->getName()."\n" );
?>
單元素模式
某些應用程序資源是獨占的,因為有且只有一個此類型的資源。例如,通過資料庫句柄到資料庫的連接是獨占的。您希望在應用程序中共享資料庫句柄,因為在保持連接打開或關閉時,它是一種開銷,在獲取單個頁面的過程中更是如此。
單元素模式可以滿足此要求。如果應用程序每次包含且僅包含一個對象,那麼這個對象就是一個單元素(Singleton)。
例如:
<?php
require_once("DB.php");
class DatabaseConnection
{
public static function get()
{
static $db = null;
if ( $db == null )
$db = new DatabaseConnection();
return $db;
}
private $_handle = null;
private function __construct()
{
$dsn = 'mysql://root:password@localhost/photos';
$this->_handle =& DB::Connect( $dsn, array() );
}
public function handle()
{
return $this->_handle;
}
}
print( "Handle = ".DatabaseConnection::get()->handle()."\n" );
print( "Handle = ".DatabaseConnection::get()->handle()."\n" );
?>
觀察者模式
觀察者模式為您提供了避免組件之間緊密耦合的另一種方法。該模式非常簡單:一個對象通過添加一個方法(該方法允許另一個對象,即觀察者 注冊自己)使本身變得可觀察。當可觀察的對象更改時,它會將消息發送到已注冊的觀察者。這些觀察者使用該信息執行的操作與可觀察的對象無關。結果是對象可以相互對話,而不必了解原因。
例如:
<?php
interface IObserver
{
function onChanged( $sender, $args );
}
interface IObservable
{
function addObserver( $observer );
}
class UserList implements IObservable
{
private $_observers = array();
public function addCustomer( $name )
{
foreach( $this->_observers as $obs )
$obs->onChanged( $this, $name );
}
public function addObserver( $observer )
{
$this->_observers []= $observer;
}
}
class UserListLogger implements IObserver
{
public function onChanged( $sender, $args )
{
echo( "'$args' added to user list\n" );
}
}
$ul = new UserList();
$ul->addObserver( new UserListLogger() );
$ul->addCustomer( "Jack" );
?>
命令鏈模式
命令鏈 模式以鬆散耦合主題為基礎,發送消息、命令和請求,或通過一組處理程序發送任意內容。每個處理程序都會自行判斷自己能否處理請求。如果可以,該請求被處理,進程停止。您可以為系統添加或移除處理程序,而不影響其他處理程序。
例如:
<?php
interface ICommand
{
function onCommand( $name, $args );
}
class CommandChain
{
private $_commands = array();
public function addCommand( $cmd )
{
$this->_commands []= $cmd;
}
public function runCommand( $name, $args )
{
foreach( $this->_commands as $cmd )
{
if ( $cmd->onCommand( $name, $args ) )
return;
}
}
}
class UserCommand implements ICommand
{
public function onCommand( $name, $args )
{
if ( $name != 'addUser' ) return false;
echo( "UserCommand handling 'addUser'\n" );
return true;
}
}
class MailCommand implements ICommand
{
public function onCommand( $name, $args )
{
if ( $name != 'mail' ) return false;
echo( "MailCommand handling 'mail'\n" );
return true;
}
}
$cc = new CommandChain();
$cc->addCommand( new UserCommand() );
$cc->addCommand( new MailCommand() );
$cc->runCommand( 'addUser', null );
$cc->runCommand( 'mail', null );
?>
策略模式
我們講述的最後一個設計模式是策略 模式。在此模式中,演算法是從復雜類提取的,因而可以方便地替換。例如,如果要更改搜索引擎中排列頁的方法,則策略模式是一個不錯的選擇。思考一下搜索引擎的幾個部分 —— 一部分遍歷頁面,一部分對每頁排列,另一部分基於排列的結果排序。在復雜的示例中,這些部分都在同一個類中。通過使用策略模式,您可將排列部分放入另一個類中,以便更改頁排列的方式,而不影響搜索引擎的其餘代碼。
例如:
<?php
interface IStrategy
{
function filter( $record );
}
class FindAfterStrategy implements IStrategy
{
private $_name;
public function __construct( $name )
{
$this->_name = $name;
}
public function filter( $record )
{
return strcmp( $this->_name, $record ) <= 0;
}
}
class RandomStrategy implements IStrategy
{
public function filter( $record )
{
return rand( 0, 1 ) >= 0.5;
}
}
class UserList
{
private $_list = array();
public function __construct( $names )
{
if ( $names != null )
{
foreach( $names as $name )
{
$this->_list []= $name;
}
}
}
public function add( $name )
{
$this->_list []= $name;
}
public function find( $filter )
{
$recs = array();
foreach( $this->_list as $user )
{
if ( $filter->filter( $user ) )
$recs []= $user;
}
return $recs;
}
}
$ul = new UserList( array( "Andy", "Jack", "Lori", "Megan" ) );
$f1 = $ul->find( new FindAfterStrategy( "J" ) );
print_r( $f1 );
$f2 = $ul->find( new RandomStrategy() );
print_r( $f2 );
?>
㈢ PHP能設計多大的網站
多大多可以!
如Google yahoo 網路 淘寶 這些網站好不好,大不大???
都是用php做的。
㈣ php網頁設計問題
你這是FTP上傳到伺服器?
那你首先要把sql文件導入資料庫
㈤ php程序設計
(1)
$newscontent = $_POST['newscontent'];
exit('<script>alert("請輸入新聞內容");history.back();</script>');
$sql = "insert into news (title,content,addtime,clicknum) values ('{$newstitle}','{$newscontent}',NOW(),0)";
$query = $db->exec($sql);
(2)
$sql = "SELECT title,addtime,clicknum FROM news";
$news = $db->getRows($sql);
foreach($news as $one){
echo "標題:{$one['title']}<br>內容:{$one['content']}<br>點擊數:{$one['clicknum']}";
(3)
$newstitle = $_POST['newstitle'];
exit('<script>alert("請輸入標題");history.back();</script>');
㈥ 平面設計還是php程序員
這兩個差別挺大啊,平面設計偏重於感性,而程序員偏重於理性。
這兩個不太可能選擇,因為做平面好的人必然做不好程序員,做好程序員就難做平面設計。這兩個你更擅長做什麼?
如果你是0基礎,我勸你選別的專業吧。這兩個專業都要你小時候有天賦,平面設計要做好,需要你有藝術感覺,一般都是美術專業生做這個,很多藝術生都做不好,更何況你一個外行了。不然你最多就是個混子,而做程序員,不只是學個php那麼簡單,更重要的是對程序本身的理解,要求你的邏輯思維強,數學和英語要好。不然學到一定程度也無法進步了,也是個混子。
相比之下,還不如學個外語,學個會計,學個廚師或者駕駛證,來錢更快。
我本身是平面設計和計算機專業雙修的,學習過程中感覺這兩個專業都很累,都是動腦子,但是動腦子的方式完全不同。一些人說做程序員枯燥,其實做平面設計也很枯燥,加班加點是常有的事。
這世界上掙得最多出力最少的最不枯燥的是做銷售,什麼基礎什麼證書都不用,用的只是你的智慧。是不枯燥,卻不是人人都能做好的。這個世界上到處都是有才華的窮人。
㈦ php製作網站
首先你得做得出一個普通HTML的網頁。現在比較流行的是DIV CSS設計了。你能隨便看到一個網頁,就可以把這個網頁的HTML版本寫出來,而不去理它裡面需要些什麼PHP技術的。
HTML網頁做出來到了,那麼再用PHP的函數去實現從資料庫讀取或寫入,基本上就完成了吧。
這個應該是一個思想吧^^
DIV CSS 實現內容和效果分離,得到HTML網頁後,用來做PHP的模板 ,用PHP來實現重復數據和判斷之類的。 三個分離 是不錯的PHP思想,條理分明,三者結合後比較有威力的^^。
<<DIV+CSS網頁布局與美化 >> 你能把裡面的CSS 作一次,自己把這些CSS寫出來,普通網頁布局就OK 。其實就是 DIV 的 float、 內框,外框,必要的高度,移動之類的。
之後的 PHP模板化就學一下 <<孫仲岳PHP專案實戰講座>> 。
說真的,PHP都有點浮雲,先把DIV CSS 做網頁搞好,這個網頁一出,你還怕什麼網站了。基礎就是HTML網頁啊,網頁不難做,難在人家隨意給你指定個網頁,你都不會COPY。所以先學會COPY 這些HTML網頁是首要,中氣十足要靠這個
㈧ PHP設計模式有哪些
1.工廠模式
工廠模式是一種類,它具有為您創建對象的某些方法。您可以使用工廠類創建對象,而不直接使用 new。這樣,如果您想要更改所創建的對象類型,只需更改該工廠即可。使用該工廠的所有代碼會自動更改。
2.單元素模式
某些應用程序資源是獨占的,因為有且只有一個此類型的資源。例如,通過資料庫句柄到資料庫的連接是獨占的。您希望在應用程序中共享資料庫句柄,因為在保持連接打開或關閉時,它是一種開銷,在獲取單個頁面的過程中更是如此。
3.觀察者模式
觀察者模式為您提供了避免組件之間緊密耦合的另一種方法。該模式非常簡單:一個對象通過添加一個方法(該方法允許另一個對象,即觀察者 注冊自己)使本身變得可觀察。當可觀察的對象更改時,它會將消息發送到已注冊的觀察者。這些觀察者使用該信息執行的操作與可觀察的對象無關。結果是對象可 以相互對話,而不必了解原因。
4.命令鏈模式
命令鏈 模式以鬆散耦合主題為基礎,發送消息、命令和請求,或通過一組處理程序發送任意內容。每個處理程序都會自行判斷自己能否處理請求。如果可以,該請求被處理,進程停止。您可以為系統添加或移除處理程序,而不影響其他處理程序。
5.策略模式
我們講述的最後一個設計模式是策略 模式。在此模式中,演算法是從復雜類提取的,因而可以方便地替換。例如,如果要更改搜索引擎中排列頁的方法,則策略模式是一個不錯的選擇。思考一下搜索引擎 的幾個部分 —— 一部分遍歷頁面,一部分對每頁排列,另一部分基於排列的結果排序。在復雜的示例中,這些部分都在同一個類中。通過使用策略模式,您可將排列部分放入另一個 類中,以便更改頁排列的方式,而不影響搜索引擎的其餘代碼。
㈨ 如何用PHP設計一個網站,需要那幾個步驟
需要伺服器,可以租用
域名,自己購買或租用主機配的多級域名
php程序腳本,可以使用別人做好的上傳到空間,並配置
如果你是說php寫腳本,那得當一門課程學習很多
㈩ PHP頁面設計
你得這么寫
<html>
<head></head>
<body>
<table><tr><td><?phpecho'hehe';?></td><td><?phpecho'haha';?></td></tr></table>
</body>
</html>
你也可以用模板引擎,比如學php必學的smarty