PHP基础文法快速入门
Perl的和Ruby的语法组织得非常好,于是PHP也跟着尝试将这两种语言的优势引入。
Grammar list of Perl and Ruby was so very well organized, I tried to do any PHP Taking advantage of.
I think people who know something about other languages can understand somehow the PHP syntax If you are reading this.
Please tell us mistake, if any shortage etc. m (__) m
PHP5.3 system has been released, but is intended for PHP5.2 system here.
PHP code begins with the start tag of "<? Php". End tag is "?>". Use the end tag when you fill the PHP code in HTML, omitting the end tag has become a convention when writing the only PHP code as a library.
It had positive commentary on Kiske's: id reason for omitting the end tag. Thank you.
PHP 基本语法最快入门补充 - Absolute Playing!
<?php $I = 1; hoge ($I); ?>
<?php hoge (); ?>
I use the print / echo.
<?php
"! Hello World" Print;
"! Hello World" echo;
?>
I often use var_dump () to debug. contents of the variable in var_dump () is output.
<?php
$array = array (1,2,3);
var_dump ($array);
?>
array (3) { [0] => int (1) [1] => int (2) [2] => int (3) }
单行注释(Line Comments)
<?php
//comment
# comment
?>
多行注释 Multi-line comments
<?php
/ *
comment
comment
* /
?>
It is a declaration of the variable.
<?php
$a = 'string';
$I = 1;
?>
I run a PHP file on the command line.
$ php hoge.php
You can also write directly to the PHP code. <? Php?> Is not required.
$ php-r "var_dump ('a');"
Use the redirect to write the output to a file results.
$ php hoge.php> out
I can check grammar in php command.
$php -l hoge.php
There integer, floating-point to a number.
<?php
$int = 100;
$float = 100.123;
?>
4种算术操作 Four arithmetic operations
<?php
$I = 1 + 1;
$I = 1 - 1;
$I = 1 * 1;
$I = 1/2;
?>
Quotient and remainder. Remove the integer part in the intval function after performing the division of normal order to obtain the quotient.
<?php
$div = intval (3/2); //quotient
$mod = 3 % 2; // remainder
?>
<?php
$I + +; //increment
$i --; //decrement
?>
I must be enclosed in either single or double quotes is a string. You can use special characters, and \ n (tab), such as (newline) \ t is in double quotes. In addition, it can be variable expansion within a character string enclosed in double quotes.
<?php
$str1 = "abc\tcde"; // (\ t tabs [0x09]) //abc cde;
$str2 = 'abc\tcde'; // (string \ t) abc \ tcde
$str3 = "$str1 100"; // abc cde 100 // $st1 will be replaced
$str4 = "{$str1} 100"; // when the string leads to a variable name enclosed in {}
?>
<?php
//join
$Join1 = 'aaa' 'BBB';.
$Join2 = Implode (',', array ('aaa', 'BBB', 'ccc'));
//Split
$split = explode (',', 'aaa, bbb, ccc');
//Length
$length = strlen;('abcdef')
//(multi-byte) length
setting of //internal encoding is necessary
//mb_internal_encoding ('UTF-8');
$mb_length = mb_strlen('tails ABC');
//Cut
$substr = substr ('abcd', 0, 2); //ab
//Search
$index = strpos ('abcd', 'bc'); //Once you have located the position return false if you do not find (the first is 0),
?>
There are only associative array with PHP. Array is represented as an associative array of numbers is key. I also have the order.
<?php
$array1 = array (1, 2, 3); //array (associative array key starts from 0)
$array2 = array ('a' => 1, 'b' => 2, 'c' = > 3); //associative array (1, 'a' => 1, 2)
$array3 = array; //mixed also OK
?>
Assignment of a reference element
<?php
$i = $array1[0];
$s = $array2['a'];
?>
<?php
$array1[3] = 1;
$array2['z'] = 'zzz';
?>
The number of elements
<?php
$len = count ($array1);
?>
<?php
$array = array (1, 2, 3);
//retrieve thetop
$first = array_shift ($array); //$first = 1, $array is, (2, 3);
//added to thetop
array_unshift ($array, 5); //$array is, (5, 2, 3)
// to remove the end
$last = array_pop ($array); //the array is (5, 2 ) , $last = 3;
// Add to the end
array_push ($array, 9); // $array is, (5, 2, 9)
?>
<?php
//obtain key
$keys = array_keys ($array);
//obtain value
$values = array_values ($array);
//key presence confirmation of
$boolean = array_key_exists ('key', $array);
//Delete the key
unset ($array ['key']);
?>
<?php
if (condition) {
}
?>
Notation such as the following will also be used when you described in HTML.
<?php if (condition): ?>
<span>hoge</span>
<?php endif; ?>
<?php
if (condition) {
} else {
}
?>
Notation such as the following will also be used when you described in HTML.
<?php if(condition): ?>
<span>hoge</span>
<?php else: ?>
<span>foo</span>
<?php endif; ?>
elseif or else if is possible.
<?php
if (condition) {
else if{}
}
?>
Notation such as the following will also be used when you described in HTML.
<?php if (condition): ?>
<span>hoge</span>
<?php elseif (condition): ?>
<span>foo</span>
<?php endif; ?>
<?php
$I = 0;
while ($I <5) {
//process
$I + +;
}
?>
Notation such as the following will also be used when you described in HTML.
<?php while ($i < 5): ?>
<span><?php echo htmlspecialchars($i); ?></span>
<?php $i++; ?>
<?php endwhile; ?>
<?php
for ($I = 0; $I <5; $I + +) {
}
?>
Notation such as the following will also be used when you described in HTML.
<?php for ($i = 0 ; $i < 5 ; $i++): ?>
<span><?php echo htmlspecialchars($i); ?></span>
<?php endfor; ?>
I can handle each element of the associative array.
<?php
foreach($array as $v) {
//$v is value of the element
}
foreach ($array as $k => $v) {
// $k is the key of the element, $v is the value of the element
}
?>
Notation such as the following will also be used when you described in HTML.
<?php foreach ($array as $v): ?>
<span><?php echo htmlspecialchars($v); ?></span>
<?php endforeach; ?>
There is a function with PHP. You can use the return to return the return value.
<?php
function sum ($v1, $v2) {
Return $v1 + $v2;
}
$Total = sum (1, 2); //$Total = 3
//You can also return multiple values in an array
function Get_multi ($v1, $v2) {
$v1 + = 100;
$v2 + = 200;
Return array ($v1, $v2);
}
list ($ret1, $ret2) = Get_multi(1, 2); //$ret1 = 101, $ret2 = 202
?>
There are several ways to file input and output.
Make the input and output files using the file pointer.
<?php
//read
$fp = fopen ("/ path / to / File", "r");
if (! is_resource ($fp)) {
die ("Can not Open File");
}
while (feof ($fp)!) {
$line = fgets ($fp, 4096);
//processing something
}
fclose ($fp);
//Write
$fp = fopen ("/ path / to / File", "w");
if (! is_resource ($fp)) {
die ("Can not Open File");
}
fputs ($fp, $buff);
fclose ($fp);
?>
It is stored in the array reads the entire file.
<?php
$list = File ("/ path / to / File"); // acquisition is an associative array of each line of the file
?>
and then stored as a string by reading the entire file file_get_contents function. file_put_contents function writes to the file all the value of a variable.
<?php
//read
$contents = file_get_contents("/ path / to / file") // to get the contents of the file;
//Write
file_put_contents("/ path / to / file", $buff); // write the contents of the file $buff
?>
In the following cases: in PHP, they are determined to be false.
== /! = In comparison operators such as, automatic conversion of numeric, string is performed. It may lead to results thus not intended.
<?php
var_dump (1 == 1); //true
var_dump (1 == '1 '); //true
var_dump (0 == 'a'); //true
var_dump (100 '100A == '); //true
var_dump ('+1' == '1 .0'); //true
?>
In these cases, it is possible to compare exactly also the type of the variable === /! With ==.
<?php
var_dump (1 === 1); //true
var_dump (1 === '1 '); //false
var_dump (0 === '0 '); //false
var_dump (100 === ' 100a '); //false
var_dump ('+1' === '1 .0'); //false
?>
You can use the isset function to find out whether a variable is defined. True is returned if it is defined. However, the value of the variable is returned is false can be NULL in the isset function.
<?php
isset ($a);
?>
You can use the $argv variable to receive the command-line arguments.
<?php
var_dump ($argv);
?>
You can use the array_map function, you can receive as a new associative array with the process to each element of the associative array.
<?php
$array = array (1,2,3);
$mapped = array_map (create_function ('$v', 'return $v * = 10;'), $array);
?>
You can use the array_filter function, you can receive as a new associative array only the elements that match the conditions.
<?php
$array = array (1,2,3,4);
$filtered = array_filter ($array, create_function ('$v', 'return ($v> 2);');
?>
<?php
list ($v1, $v2, $v3) = array (1, 2, 3);
?>
There is a configuration file with PHP. It is important to note behavior will change depending on the setting. In addition to the configuration file called php.ini, this setting can be set in the source code httpd.conf, and. Htaccess,.
The setting method will vary depending on the item, but you can use the () ini_set is often when setting in the source code.
<?php
ini_set('include_path', '. :/ path / to / libs'); //to include_path setting the '. :/ path / to / libs'
?>
The current settings, I can check the php phpinfo command or function.
<?php
phpinfo ();
?>
# Output all the setting value
$ php -i
# grep in
$ php -i | grep include_path
I can define a class in the class.
<?php
class User {
protected $name = null;
public function __ construct ($name) {
$this-> name = $name;
}
public function hello () {
printf ("!% s: Hello \n", $this-> name);
}
}
$User = new User ('Mike');
$user-> hello ();
?>
I can also be inherited. You can only single inheritance.
<?php
class MyUser extends User {
}
?>
You can throw an exception throw. I will catch an exception in a try / catch. There is no equivalent to the finally in the other languages.
<?php
function foo () {
throw NEW Exception ();
}
try {
foo ();
} catch (Exception $e) {
echo $e-> GetTraceAsString ();
}
?>
For PHP books have been published many, but most would be helpful after all is the official manual.
The TIps you a little when using the official manual.
When you open the official manual in a browser, the page opens directly when you enter the name of the function was examined behind http://php.net/. You can also keyword similar If no match is displayed most, to choose from among the candidates.
http://php.net/array
I have a school several coding conventions, but the coding conventions of Zend Framework will help you.
Zend Framework PHP Coding Standard - Zend Framework Manual
There are also function as an object-oriented language with PHP. The following publications will be helpful.
Sweet @ sotarok with rice and meat - and the documentation that you held a study session modern PHP
Be used framework is becoming a major in Web systems development using PHP.
There is an open source framework for many, the major ones are as follows.
Related entries
源地址: