Hiển thị các bài đăng có nhãn PHP. Hiển thị tất cả bài đăng
Hiển thị các bài đăng có nhãn PHP. Hiển thị tất cả bài đăng

Các PHP framework hay và thông dụng trong thiết kế web

Người đăng: culaoxanh88 on Thứ Tư, 29 tháng 4, 2015

5 PHP Framework được đánh giá là tốt và phổ biến nhất hiện nay:

1. The Zend Framework

Zend là một [framework] PHP mạnh mẽ , an toàn hơn, đáng tin cậy và cho phép các ứng dụng Web 2.0 và service web. Framework này ban đầu được xây dựng bởi ngôn ngữ lập trình web PHP. Nó được làm giàu với các API từ các nhà cung cấp hàng đầu như Google, Amazon, Yahoo, Flickr vv mà làm cho nó sự lựa chọn cho các doanh nghiệp lớn.

Trên thực tế, Zend có khá là nhiều bạn có thể hy vọng tìm thấy một framework PHP tốt trong đó. Nó mạnh mẽ, nhanh chóng và khả năng mở rộng. Nhu cầu đối với các nhà phát triển Zend là to lớn và biết làm thế nào để sử dụng Zend là giống như có một sự đảm bảo rằng bạn sẽ không bao giờ ra khỏi công việc.

Trang chủ: http://framework.zend.com/ 
Tài liệu: http://framework.zend.com/docs/ 
Download: http://framework.zend.com/downloads/latest 
Zend Framework có 1 cộng đồng phát triển rộng lớn, và nó tập trung vào các ứng dụng web theo phong cách 2.0. Vì được phổ biến rộng rãi, và có 1 cộng đồng người dùng tích cực, Zend được gọi là “Công ty PHP”. Zend là 1 trong những framework phổ biến nhất hiện nay. Nó có các tính năng mạnh mẽ, thường được sử dụng cho các công ty lớn, và bạn cần phải có lượng kiến thức khá sâu rộng về PHP để có thể sử dụng được nó. 

2. CakePHP Framework
CakePHP là một framework phổ biến cho phát triển ứng dụng web. Đơn giản của nó để tìm hiểu rằng cung cấp một cấu trúc cơ bản của tổ chức, giữ cho toàn bộ ứng dụng của nhất quán và hợp lý. Nó có thể xử lý mọi khía cạnh, từ yêu cầu ban đầu của người dùng tất cả các cách để cuối cùng vẽ được một thiết kế web. Và kể từ khi khuôn khổ theo các nguyên tắc của MVC, nó cho phép bạn dễ dàng tùy biến và mở rộng hầu hết các khía cạnh của ứng dụng của bạn.
Trang chủ: http://www.cakephp.org 
Tài liệu:http://book.cakephp.org/2.0/en/index.html 
Download: https://github.com/cakephp/cakephp/tags

3. CodeIgniter framework
Hiện nay, CodeIgniter cũng là một sự lựa chọn của hầu hết các nhà phát triển PHP. Nó tương đối dễ dàng để tìm hiểu. Tính năng khôn ngoan, CodeIgniter là khuôn khổ mạnh mẽ như Zend và Cake. Mục tiêu chính của nó là để cho phép bạn phát triển các dự án thiết kế web nhiều hơn, nhanh hơn bạn có thể, bằng cách cung cấp một tập các thư viện phong phú cho các nhiệm vụ thông thường, cũng như một giao diện đơn giản và cơ cấu hợp lý để truy cập vào các thư viện. CodeIgniter cho phép bạn sáng tạo tập trung vào các dự án của bạn bằng cách giảm thiểu số lượng mã cần thiết cho một công việc nhất định.
Trang chủ: http://www.codeigniter.com/ 
Tài liệu : http://ellislab.com/codeigniter/user-guide/ 
Download: http://codeigniter.com/downloads/

4. Seagull 
Seagull cũng là 1 PHP framework tốt phục vụ cho việc xây dựng thiết kế web và các GUI. Nó là 1 framework cực kỳ dễ sử dụng cho cả những người mới mới làm quen với lập trình PHP đến những chuyên gia trong lập trình PHP. Với những người mới làm quen với lập trình PHP, Seagull cung cấp 1 thư viện các mẫu ứng dụng có thể được tùy chỉnh để phù hợp với nhu cầu của bạn. Đối với các chuyên gia PHP, Seagull cung cấp các tùy chọn máy chủ, bao gồm các phương pháp hay nhất, tiêu chuẩn, và modular codebase – giúp các lập trình viên xây dựng các ứng dụng web một cách nhanh chóng và dễ dàng. Seagull có một cộng đồng phát triển rộng lớn và nhiều tài liệu hướng dẫn hỗ trợ. 
Trang chủ website: http://www.seagullproject.org/
Link download:      http://seagullproject.org/download/ 
Link tài liệu:           http://seagullproject.org/docs/ 

5. Symfony Framework

Một khuôn khổ PHP hoàn chỉnh được thiết kế để tối ưu hóa sự phát triển của các ứng dụng web. Symfony được viết hoàn toàn bằng ngôn ngữ lập trình web PHP. Nó đã được kiểm tra kỹ lưỡng trong các dự án thực tế, và thực sự là sử dụng cho các thiết kế web bán hàng thương mại điện tử có nhu cầu cao. Nó tương thích với hầu hết các công cụ cơ sở dữ liệu có sẵn, bao gồm cả [MySQL], PostgreSQL, Oracle, và Microsoft SQL Server. Nó chạy trên nền tảng Unix và Windows. 
Trang chủ: http://www.symfony-project.com/ 
Tài liệu:http://www.symfony-project.org/doc/1_4/ 
Download: http://symfony.com/download#legacy

More about

PHP: Tự động tạo mật khẩu ngẫu nhiên - PHP Password Generating

Người đăng: culaoxanh88 on Thứ Sáu, 21 tháng 2, 2014


Tự động tạo mật khẩu ngẫu nhiên - PHP Password Generating
PHP Code:
<?php
function genPwd($length=6) {
   $password = '';
   $possible = '23456789bcdfghjkmnpqrstvwxyz';
   $i = 0;
   while ($i < $length) {

      $password .= substr($possible, mt_rand(0, strlen($possible)-1), 1);
      $i++;
   } 
   return $password;
}
?>
Cách sử dụng:
Cóp và dán đoạn mã trên vào trang của bạn, sau đó gọi hàm genPwd() như sau:
<?php
   $password = genPwd(8);
?>
Kết quả:
Đoạn mã trên cho phép tự động tạo mật khẩu ngẫu nhiên có độ dài bất kỳ được tổ hợp từ các ký tự xác định trước.
Mật khẩu ngẫu nhiên được sinh ra có độ dài 8 ký tự: m1ztpxw8
Chú ý:
Nếu không có độ dài ký tự trong hàm genPwd() thì mặc định sẽ chọn độ dài mật khẩu là 6. Biến $possible trong hàm genPwd() có thể được chỉnh sửa để quy định các ký tự xác định được sử dụng.

Tag: PHP, Password Generating, tự tạo mật khẩu, an toàn thông tin
More about

PHP: Lớp kết nối MySQL với PHP bằng câu lệnh đơn giản

Người đăng: culaoxanh88

PHP Code:
class mysql{
var $property = array(
    'hostname'    => 'localhost',
    'database'    => '',
    'username'    => '',
    'password'    => '',
);
function mysql($info){
foreach($this->property as $k    => $v){
$this->property[$k]=$info[$k];
}
}
function connect(){
$flag = @mysql_pconnect($this->property['hostname'],$this->property['username'],$this->property['password']);
if(!$flag)    die("can not connect to server. may be server bussy");
$flag= @mysql_select_db($this->property['database'],$flag);
if(!$flag) die("can not select database now");
}
}
Lưu vào trong 1 file ví dụ “global.php”;
Để dễ dàng khi kết nối bạn viết thêm 1 file init.php file này có chứ năng tạo các thông tin cấu hình cơ bản như kết nối mysql, lấy thông tin thành viên …
ví dụ
PHP Code:
<?php
$dbinfo = array(
'hostname'    => 'localhost',
'database'    => 'databasename',
'username'    => 'root',
'password'    => 'root',
);
include("includes/global.php");
$db = new mysql($dbinfo);
$db->connect();
?>
Như vậy file nào cần kết nối database bạn chỉ cần inlclude file init.php vào là ok;
PHP Code:
include("init.php");

Tag: PHP, MySQL, Apache, Database, Connection, dbinfo
More about

PHP: Các hàm PHP xử lý chuỗi

Người đăng: culaoxanh88


Các hàm PHP xử lý chuỗi

1: addcslashes :Trích dẫn chuỗi kí tự với những vạch chéo trong kiểu C
- Cấu trúc :addcslashes(string with special characters);

2: addslashes :Trích dẫn chuỗi kí tự với những vạch chéo
- Cấu trúc : addcslashes(a string with special characters);

3: bin2hex :Chuyển đổi dữ liệu dạng nhị phân sang dạng biểu diễn hệ hexa
- Cấu trúc :bin2hex(string);

4: chop :Tách bỏ nhưng khoảng trắng từ cuối một chuỗi

5: chr : Cho một kí tự đặc biệt trong bảng mã
- Cấu trúc : chr(numeric);

6: chuck split : Tách một chuỗi thành các chuỗi nhỏ hơn

7: convert cyr string :Chuyển đổi từ một kí tự kirin sang một kí tự khác

8: count_chart : Cho thông tin về các kí tự dùng trong chuỗi

9: crc32 : Tính toán sự thừa vòng đa thức của một chuỗi
Tự động tạo ra chu ki kiểm tra tổng thừa của đa thức dài 32bit trong một chuỗi

10: crypt :Một cách mã hóa một chuỗi

11: echo : In ra một hay nhiều chuỗi

12: explode :Tách một chuỗi ra bởi chuỗi kí tự

13: fprintf :Viết một định dạng chuỗi ra một dòng

14: get html translation table :Cho ra bảng dịch bằng cách sử dung các thủ tục

html entity decode :

15: hebrev :Chuyển đổi văn ban logic khó hiểu sang văn ban trưc quan

16: hebrevc :Chuyển đổi văn ban logic khó hiểu sang văn ban trưc quan với sự chuyển đổi dòng mới

17: html entity decode :Chuyển đổi tấtcả cácthực thể HTML sang những kí tự có thể dùng được của chúng

18: htmlentities :Đổi tất cả các kí tự được sử dung sang các thực thể HTML

19: htmlspecialchars :Đổi những kí tự đặc biệt sang các thực thể của HTML

20: implode :Nối các phần tử của mảng với một chuỗi

21: join :Hàm này là một bí danh của hàm implode

22: levenshtein :Tính khoảng cách giữa hai chuỗi

23: localeconv :Lấy ra thông tin quy cách số

24: lstrim-- Strip whitespace from the beginning of a string
Xoá khoảng trắng từ phần tử đầu tiên của chuỗi

25: md5_file-- Calculates the md5 hash of a given filename
Mã hoá md5 tên file

26: md5 -- Calculate the md5 hash of a string
Mã hoá md5 1 chuỗi

27: metaphone -- Calculate the metaphone key of a string
Tính siêu khoá âm thanh của 1 chuỗi

28: money_format -- Formats a number as a currency string
Định dạng 1 số như 1 chuỗi tiền tệ

29: nl_langinfo -- Query language and locale information
Ngôn ngữ truy vấn và biên tập thông tin

30: nl2br -- Inserts HTML line breaks before all newlines in a string
Chèn 1 dòng ngắt HTML trước tất cả những dòng mới trong 1 chuỗi

31: number_format -- Format a number with grouped thousands
Định dạng 1 số với hàng nghìn chữ số

32: ord -- Return ASCII value of character
Trả lại giá trị ASCII của kí tự

33: parse_str -- Parses the string into variables
Phân tách chuỗi thành các biến số

34: print -- Output a string
In ra 1 chuỗi

35: printf -- Output a formatted string
In ra 1 chuỗi được định dạng

36: quoted_printable_decode -- Convert a quoted-printable string to an 8 bit string
Chuyển 1 chuỗi có thể in trích dẫn sang 1 chuỗi 8 bit.(Giải mã)

37: quotemeta -- Quote meta characters
Trích dẫn kí tự đặc biệt

38: rtrim -- Strip whitespace from the end of a string
Xoá khoảng trắng từ phần tử cuối cùng của chuỗi

39: setlocale -- Set locale information
Thiết lập vị trí thông tin

40: sha1_file -- Calculate the sha1 hash of a file
Mã hoá sha1 1 file

41: sha1 -- Calculate the sha1 hash of a string
Mã hoá sha1 1 chuỗi

42: similar_text -- Calculate the similarity between two strings
Cho số kí tự giống nhau của 2 chuỗi

43: soundex -- Calculate the soundex key of a string
Tính khoá chỉ âm của 1 chuỗi

44: sprintf -- Return a formatted string
Trả lại 1 chuỗi được định dạng

45: sscanf -- Parses input from a string according to a format
Phân tách chuỗi theo 1 định dạng

46: str_ireplace -- Case-insensitive version of str_replace().
Tương tự str_ replace().

47: sscanf -- Parses input from a string according to a format
Phân tích từ loại nhập vao từ một chuỗi theo một định dạng

48: str_ireplace -- Case-insensitive version of str_replace().
->Thay thế ngược lại khi chuỗi đã bị thay thế bằng str_replace()

49: str_pad -- Pad a string to a certain length with another string
Co một chuỗi tới một độ dài nào đó với một chuỗi khác

50: str_repeat -- Repeat a string
Lặp lại một chuỗi

51: str_replace -- Replace all occurrences of the search string with the replacement string
Thay thế tất cả các biến cố của chuỗi tìm kiếm với một chuỗi thay thế

52: str_rot13 --Perform the rot13 transform on a string
Thực hiện mã hoá theo rot 13 trên 1 chuỗi

(Rot-13 :Trong các nhóm tin của mạng USENET, đây là một kỹ thuật mật mã hoá đơn giản, nó làm dịch từng ký tự đi 13 vị trí trong bảng chữ cái (cho nên e sẽ thành r). Mật mã rot- 13 được dùng cho mọi thông báo tin bất kỳ nào có thể làm mất sự thú vị của một người nào đó (như) cách giải cho một trò chơi chẳng hạn hoặc xúc phạm một số người đọc (như) bài thơ về tình dục chẳng hạn. Nếu người đọc cho giải mã thông báo tin này bằng cách phát ra một lệnh thích hợp, thì người đọc đó - chứ không phải tác giả của thông báo - sẽ phải chịu trách nhiệm đối với sự khó chịu do việc đọc thông báo gây ra.)

53: str_shuffle --Randomly shuffles a string
Thay đổi một chuỗi bằng cách xê dịch ngẫu nhiên

54: str_split -- Convert a string to an array
Đổi một chuỗi thành một mảng

55: str_word_count -- Return information about words used in a string
Trả lại thông tin về những từ đã sử dụng trong một chuỗi

56: strcasecmp -- Binary safe case-insensitive string comparison
So sánh chuỗi theo …case-insensitive.. nhị phân

57: strchr --Alias of strstr()
Bí danh của strstr()

58: strcmp --Binary safe string comparison
Sự so sánh chuỗi bằng cơ sở nhị phân

59: strcoll --Locale based string comparison
Nơi diễn ra sự so sánh cơ sở

60: strcspn -- Find length of initial segment not matching mask
Tìm độ dài của đoạn đầu tiên mà không tìm thấy trên bề mặt của chuỗi này đối với chuỗi kia.

61: strip_tags --Strip HTML and PHP tags from a string
Loại bỏ các thẻ HTML và PHP từ một chuỗi

62: stripcslashes -- Un-quote string quoted with addcslashes()
Loại bỏ các dấu slashe trong chuỗi do hàm addcslashes() tạo ra.

63: stripos -- Find position of first occurrence of a case-insensitive string
Tìm ra vị trí đầu tiên của chuỗi này trong chuỗi kia của trường hợp sử lý cặp chuỗi.

64: stripslashes -- Un-quote string quoted with addslashes()
Loại bỏ hàm addslashes(), hay nói cách khác, hàm này trả về giá trị ban đầu của chuỗi khi chuỗi bị hàm addslashes() chèn các dấu slashe ở các ký tự đặc biệt

65: stristr -- Case-insensitive strstr()
Loại bỏ hàm strstr() khi trong chuỗi có dấu chấm.

66: strlen --Get string length
Lấy độ dài của chuỗi

67: strnatcasecmp -- Case insensitive string comparisons using a "natural order" algorithm
So sánh chuỗi theo thứ tự abc, các ký tự được xét từ đầu đến cuối chuỗi
(VD: a2>a12>a11).

68: strnatcmp -- String comparisons using a "natural order" algorithm
So sánh chuỗi sử dụng thứ tự abc và thứ tự toán học, nhưng được tính trên toàn bộ chuỗi ( VD: a12 > a11>a2).

69: strncasecmp -- Binary safe case-insensitive string comparison of the first n characters
Là một hàm giống như strcasecmp(), khác ở chỗ hàm này có thể chỉ rõ số ký tự trong mỗi chuỗi đem so sánh.

70: strncmp: trả ra giá trị mà chuỗi1 dài hơn so với sâu hai.

71: strpos: Tìm vì trí xuất hiện đầu tiên của một chuỗi này trong chuỗi khác.

72: strrchr: Tìm kiếm vị trí xuất hiện cuối cùng của một kí tự trong chuỗi.

73: strrev: Đảo ngược một chuỗi.

74: strripos: Tìm vị trí cuối cùng của chuỗi này khiến nó khác một chuỗi cho trước.

75: strrpos: Tìm vị trí lần xuất hiện cuối cùng cùng của một kí tự trong một chuỗi.

76: strspn: Tính xem độ dài đoạn đầu của một chuỗi mà chứa toàn các kí tự thuộc chuỗi khác.

77: strstr: Lấy ra một đoạn của chuỗi từ vị trí xuất hiện kí tự cho trước.

78: strtok: chia cắt chuỗi.

79: strtolower: biến kí tự chữ hoa thành chữ thường.

80: strtoupper: biến kí tự chữ thường thành chữ hoa.

81: strtr: chuyển đổi kí tự theo một qui tắc nào đó.

82: substr_compare: không có thông tin.

83: substr_count: Tính số lần xuất hiện của một chuỗi này trong một chuỗi khác.

84: substr_replace: thay thế một đoạn văn bản trong phạm vi một đoạn của chuỗi kí tự.

85: substr: trả ra một phần của chuỗi.

86: trim: Loại bỏ kí tự thừa(whitespace)ở đầu và cuối mỗi chuỗi.

87: ucfirst: viết hoa kí tự đầu tiên của một chuỗi.

88: ucwords: viết hoa kí tự đầu tiên của mỗi từ.

89: vprints: xuất ra một chuỗi được định dạng

90: vsprint: quai lại một chuỗi định dạng.

91: wordswarp: chia chuỗi kí tự ra thành các sâu con nhờ một kí tự xác định.
More about

PHP: Hàm trả về vị trí xuất hiện của chuỗi s1 trong chuỗi s2

Người đăng: culaoxanh88 on Chủ Nhật, 21 tháng 7, 2013


<?php 
/*  This  function  returns  the  position  of  string  s1  within  string  s2. 
      The  position  is  1  based.    If  s1  is  not  in  s2,  0  is  returned. 
*/ 
function  InStr($s1,  $s2) 

        //Check  for  valid  input 
        if(!(is_string($s1)  &&  is_string($s2)))  return  0; 

        $s1len  =  strlen($s1); 
        $s2len  =  strlen($s2); 

        //Check  if  s1  in  s2  at  all 
        if(!ereg($s1,  $s2))  return  0; 

        //Resolve  simple  case 
        if($s1  ==  $s2)  return  1; 

        //Set  initial  search  limits 
        $begin  =  0; 
        $end  =  $s2len  -  $s1len; 

        //Initialize  position 
        $position  =  0; 

        //Do  binary  search  of  s2  for  s1 
        //Check  left  side  first  to  find  first  occurance  of  s1 
        //Check  right  side  first  to  find  last  occurance  of  s1 
        while($end  >  $begin  +  1) 
        { 
                $middle  =  ceil(($begin  +  $end)  /  2); 
                $leftBegin  =  $begin; 
                $rightBegin  =  $middle  +  $s1len; 
                $leftEnd  =  $middle; 
                $rightEnd  =  $end  +  $s1len; 

                //Check  left  first 
                if(ereg($s1,  substr($s2,  $leftBegin,  $rightBegin  -  $leftBegin))) 
                { 
                        $end  =  $middle; 
                } 
                else  //(ereg($s1,  substr($s2,  $leftEnd,  $rightEnd  -  $leftEnd))) 
                { 
                        $position  +=  $middle  -  $begin; 
                        $begin  =  $middle; 
                } 
        } 

        //Resolve  1  off  problems  introduced  by  ceil 
        if(ereg($s1,  substr($s2,  $end,  $s1len)))  $position++; 

        //Return  position  1  based 
        return  $position  +  1; 

?>

More about