search
HomeBackend DevelopmentPHP TutorialPHP基础开发代码示范

PHP基础开发代码示例~
最近打算重拾PHP来开发一些小型应用,很久没用PHP了,有些语法都生疏了,今天上午写了三个例子,基本上把之前的PHP复习了一下。

基础语法操作:

<?php //输出的方式测试echo '###################输出测试################<br>';echo '测试输出1(单引号)<br>';echo "测试塑出2(双引号)<br>";?>='测试输出3(=表达式)<br>'?> echo '测试输出4(单个表达式)<br>'; ?><?php //类型echo '###################类型测试################<br>';$testInt = 1;$testStr = "字符串";$testFloat = 1.23;$testBoolean = false; //false/true:如果转换成字符串则为空/"1",转换成整型则为0/1$testArray = array("first"=>1,2,3,4,5);$testStr2 = $testStr; //testStr修改,testStr2不会修改$testStr3 = &$testStr; //testStr修改,testStr3也会修改echo '整型:'.$testInt.'<br>';echo '字符串型:'.$testStr.'<br>';$testStr = '字符串修改了';echo '字符串型修改后:'.$testStr.'<br>';echo '字符串型修改后(2):'.$testStr2.'<br>';echo '字符串型修改后(3):'.$testStr3.'<br>';echo '浮点型:'.$testFloat.'<br>';echo '布尔型:'.(int)$testBoolean.'<br>';echo '数组测试(1):'.$testArray[0].'<br>';echo '数组测试(2):'.$testArray['first'].'<br>';print_r($testArray);echo '<br>';foreach ($testArray as $i => $value) {    echo '数组迭代结果:'.$i."->".$value."<br>";}//IO操作echo '##################IO操作####################<br>';echo '读取该文件的内容:<br>';$theFileName = "test_base.php"; //文件名称或者全路径$handle = fopen ($theFileName, "rb");$contents = fread ($handle, filesize ($theFileName));fclose ($handle); echo '<div style="border:1px solid #aaa;color:blue;"><pre class="brush:php;toolbar:false">'.htmlspecialchars($contents).'
';?>

数据库的处理:
<?php //四种引用方式//require 'test_base.php'; //无条件的引用,报错会终止应用,引用的文件只处理一次//require_once 'test_base.php'; //无条件的引用,报错会终止应用,引用的文件只处理一次并只显示一次//include 'test_base.php'; //可有条件的引用,报错不会终止应用,引用的文件处理多次//include_once 'test_base.php'; //可有条件的引用,报错不会终止应用,引用的文件处理多次但只显示一次//数据库的测试$hostname = '192.168.1.6'; /*数据库服务器访问地址*/$username = 'root'; /*数据库用户帐号*/$password = 'root'; /*数据库密码*/$database = 'phptest'; /*数据库名称*/$databaseCharset = 'GBK'; /*数据库编码,防止插入中文乱码和报错*///获取请求信息$actionSubmit = $_REQUEST['submit'];$reqTheType = $_REQUEST['theType'];if($reqTheType == null || $reqTheType == '') {	$reqTheType = '1';}echo '请求信息:'.$actionSubmit."|".$reqTheType.'<br>';if($actionSubmit != null && $actionSubmit != '') {	if($reqTheType == '1') {		testSearch();	}	if($reqTheType == '2') {		testInsert();		testSearch();	}	if($reqTheType == '3') {		testUpdate();		testSearch();	}}/** * 数据库查询 * Enter description here ... */function testSearch() {	echo '查询数据<br>';	global $hostname,$username,$password,$database,$databaseCharset;		$currentConn = null;	$currentConn = mysql_connect ( $hostname, $username, $password );	mysql_select_db ( $database );	mysql_query("set names charset ".$databaseCharset);	mysql_query("set names ".$databaseCharset);	$result = mysql_query ( "select * from e_user" ); //查询动作返回的是result结果集	while ( $row = mysql_fetch_object ( $result ) ) {		echo $row->uri . "\t" . ($row->username) . "<br>";	}	mysql_free_result ( $result );	mysql_close ( $currentConn );}/** * 数据库数据添加 * Enter description here ... */function testInsert() {	global $hostname,$username,$password,$database,$databaseCharset;	$insertSql = "insert into e_user(uri,username,password) values";	$insertSql .= "(";	$insertSql .= "'".generateId()."','测试用户','123456'";	$insertSql .= ")";	$currentConn = null;	$currentConn = mysql_connect ( $hostname, $username, $password );	mysql_select_db ( $database );	mysql_query("set names charset ".$databaseCharset);	mysql_query("set names ".$databaseCharset);	echo '添加数据'.$insertSql.'<br>';	$result = mysql_query($insertSql); //插入动作返回的是boolean	if(!$result) {		die('Error: ' . mysql_error());	}	mysql_close ( $currentConn );}/** * 数据库修改 * Enter description here ... */function testUpdate() {	global $hostname,$username,$password,$database,$databaseCharset;	$updateSql = "update e_user";	$updateSql .= " set username='修改后的用户名称' where uri = '001'";	$currentConn = null;	$currentConn = mysql_connect ( $hostname, $username, $password );	mysql_select_db ( $database );	mysql_query("set names charset ".$databaseCharset);	mysql_query("set names ".$databaseCharset);	echo '修改数据'.$updateSql.'<br>';	$result = mysql_query($updateSql); //插入动作返回的是boolean	if(!$result) {		die('Error: ' . mysql_error());	}	mysql_close ( $currentConn );}/** * 自动生成ID号 * @param unknown_type $count */function generateId($count = 6) {	$resultId = '';	for($i=0;$i
checked="checked" } ?>/>查询数据测试 checked="checked" } ?>/>添加数据测试checked="checked" } ?>/>修改数据测试


面向对象编程:
<?php //基础的抽象用户类abstract class BaseUser {	protected $flag = 0;	abstract function showInfo();}//接口类interface Module {	function start();	function stop();}//测试PHP类和对象class MyUser extends BaseUser implements Module {	/*成员变量*/	private $uri = '';	private $type = '';	protected $username = '';	public $password = '';		/*静态变量*/	const USER_TYPE_NORMAL = "normal";		/*构造函数*/	function __construct($uri = '',$username = '', $password = '') {		$this->uri = $uri;		$this->username = $username;		$this->password = $password;		$this->flag = '100';		$this->type = self::USER_TYPE_NORMAL;	}		/*测试静态函数的处理*/	static function testStatic() {		//$this->username = 'static'; //该方法是错误的,静态方法中只能操作静态变量		return self::USER_TYPE_NORMAL;	}		/*get set 方法用于管理内部的字段属性*/	public function getUri() {		return $this->uri;	}	public function getUsername() {		return $this->username;	}	public function getPassword() {		return $this->password;	}	public function setUri($uri) {		$this->uri = $uri;	}	public function setUsername($username) {		$this->username = $username;	}	public function setPassword($password) {		$this->password = $password;	}	public function getType() {		return $this->type;	}	public function setType($type) {		$this->type = $type;	}			/*实现底层的抽象方法*/	function showInfo() {		echo '我是MyUser对象.';	}		//实现接口方法	public function start() {		echo '启动MyUser对象....';	}		//实现接口方法	public function stop() {		echo '停止MyUser对象....';		}}//扩展自MyUser的类class MyExtendUser extends MyUser implements Module {		/*覆盖父类的构造函数*/	function __construct($uri = '',$username = '', $password = '') {		//调用父类的构造函数		parent::__construct($uri,$username,$password);				//实现自己的一些初始化动作		$this->flag = '200';	}		/*覆盖父类的getUsername方法*/	public function getUsername() {		return '继承自MyUser,'.$this->username;	}		//实现接口方法	public function start() {		echo '启动MyExtendUser对象....';	}		//实现接口方法	public function stop() {		echo '停止MyExtendUser对象....';		}}//测试用户对象$theUserObj = new MyUser('001','测试用户1','123');echo '用户名称:'.$theUserObj->getUsername().'<br>';print_r($theUserObj);echo '<br>';echo '测试静态函数1:'.$theUserObj->testStatic().'<br>';echo '测试静态函数2:'.MyUser::testStatic().'<br>';echo '测试实现的接口:';$theUserObj->start();echo '<br>';//测试继承$theUserObj2 = new MyExtendUser('002','测试用户2','123');echo '用户名称2(继承):'.$theUserObj2->getUsername().'<br>';print_r($theUserObj2);echo '<br>';echo '测试实现的接口2:';$theUserObj2->start();echo '<br>';?>

Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
华为GT3 Pro和GT4的差异是什么?华为GT3 Pro和GT4的差异是什么?Dec 29, 2023 pm 02:27 PM

许多用户在选择智能手表的时候都会选择的华为的品牌,其中华为GT3pro和GT4都是非常热门的选择,不少用户都很好奇华为GT3pro和GT4有什么区别,下面就就给大家介绍一下二者。华为GT3pro和GT4有什么区别一、外观GT4:46mm和41mm,材质是玻璃表镜+不锈钢机身+高分纤维后壳。GT3pro:46.6mm和42.9mm,材质是蓝宝石玻璃表镜+钛金属机身/陶瓷机身+陶瓷后壳二、健康GT4:采用最新的华为Truseen5.5+算法,结果会更加的精准。GT3pro:多了ECG心电图和血管及安

function是什么意思function是什么意思Aug 04, 2023 am 10:33 AM

function是函数的意思,是一段具有特定功能的可重复使用的代码块,是程序的基本组成单元之一,可以接受输入参数,执行特定的操作,并返回结果,其目的是封装一段可重复使用的代码,提高代码的可重用性和可维护性。

修复:截图工具在 Windows 11 中不起作用修复:截图工具在 Windows 11 中不起作用Aug 24, 2023 am 09:48 AM

为什么截图工具在Windows11上不起作用了解问题的根本原因有助于找到正确的解决方案。以下是截图工具可能无法正常工作的主要原因:对焦助手已打开:这可以防止截图工具打开。应用程序损坏:如果截图工具在启动时崩溃,则可能已损坏。过时的图形驱动程序:不兼容的驱动程序可能会干扰截图工具。来自其他应用程序的干扰:其他正在运行的应用程序可能与截图工具冲突。证书已过期:升级过程中的错误可能会导致此issu简单的解决方案这些适合大多数用户,不需要任何特殊的技术知识。1.更新窗口和Microsoft应用商店应用程

五个精选的Go语言开源项目,带你探索技术世界五个精选的Go语言开源项目,带你探索技术世界Jan 30, 2024 am 09:08 AM

在当今科技快速发展的时代,编程语言也如雨后春笋般涌现出来。其中一门备受瞩目的语言就是Go语言,它以其简洁、高效、并发安全等特性受到了许多开发者的喜爱。Go语言以其强大的生态系统而著称,其中有许多优秀的开源项目。本文将介绍五个精选的Go语言开源项目,带领读者一起探索Go语言开源项目的世界。KubernetesKubernetes是一个开源的容器编排引擎,用于自

Go语言开发必备:5个热门框架推荐Go语言开发必备:5个热门框架推荐Mar 24, 2024 pm 01:15 PM

《Go语言开发必备:5个热门框架推荐》Go语言作为一门快速、高效的编程语言,受到越来越多开发者的青睐。为了提高开发效率,优化代码结构,很多开发者选择使用框架来快速搭建应用。在Go语言的世界中,有许多优秀的框架可供选择。本文将介绍5个热门的Go语言框架,并提供具体的代码示例,帮助读者更好地理解和使用这些框架。1.GinGin是一个轻量级的Web框架,拥有快速

如何修复无法连接到iPhone上的App Store错误如何修复无法连接到iPhone上的App Store错误Jul 29, 2023 am 08:22 AM

第1部分:初始故障排除步骤检查苹果的系统状态:在深入研究复杂的解决方案之前,让我们从基础知识开始。问题可能不在于您的设备;苹果的服务器可能会关闭。访问Apple的系统状态页面,查看AppStore是否正常工作。如果有问题,您所能做的就是等待Apple修复它。检查您的互联网连接:确保您拥有稳定的互联网连接,因为“无法连接到AppStore”问题有时可归因于连接不良。尝试在Wi-Fi和移动数据之间切换或重置网络设置(“常规”>“重置”>“重置网络设置”>设置)。更新您的iOS版本:

使用Golang的Web框架Echo框架实现分布式任务调度使用Golang的Web框架Echo框架实现分布式任务调度Jun 24, 2023 am 11:49 AM

随着互联网的发展和信息技术的进步,大数据时代已经来临,数据分析、机器学习等领域也得到了广泛的应用。在这些领域中,任务调度是一个不可避免的问题。如何实现高效的任务调度,对于提高效率至关重要。在本篇文章中,将介绍如何使用Golang的Web框架Echo框架实现分布式任务调度。一、介绍Echo框架Echo是一个高性能、可伸缩、轻量级的GoWeb框架。它基于HTT

php提交表单通过后,弹出的对话框怎样在当前页弹出,该如何解决php提交表单通过后,弹出的对话框怎样在当前页弹出,该如何解决Jun 13, 2016 am 10:23 AM

php提交表单通过后,弹出的对话框怎样在当前页弹出php提交表单通过后,弹出的对话框怎样在当前页弹出而不是在空白页弹出?想实现这样的效果:而不是空白页弹出:------解决方案--------------------如果你的验证用PHP在后端,那么就用Ajax;仅供参考:HTML code<form name="myform"

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
2 weeks agoBy尊渡假赌尊渡假赌尊渡假赌
Repo: How To Revive Teammates
1 months agoBy尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: How To Get Giant Seeds
4 weeks agoBy尊渡假赌尊渡假赌尊渡假赌

Hot Tools

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser is a secure browser environment for taking online exams securely. This software turns any computer into a secure workstation. It controls access to any utility and prevents students from using unauthorized resources.

SublimeText3 Linux new version

SublimeText3 Linux new version

SublimeText3 Linux latest version

VSCode Windows 64-bit Download

VSCode Windows 64-bit Download

A free and powerful IDE editor launched by Microsoft

Atom editor mac version download

Atom editor mac version download

The most popular open source editor

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)