php的使用及storm环境部署
php语法
-
环境搭建:在小皮中新建网站,注意先填写域名再点击选择根目录。
-
成功创建网站后,打开发现forbidden,因为新建的网站里是空的,需要新建index.php文件----> 在Phpstorm中左上角打开文件,打开那个文件所在的文件夹---->新建一个php文件 叫index.php.这时候已经可以在小皮中打开面板了,但是在storm中无法打开------>在storm中 文件->设置->部署中新建 填写url地址是1中新建网站的域名 (也就是点击修改,出现的域名,直接复制粘贴过去即可)
$value的使用;
定义:相当于箱子,承载着你想让屏幕输出的东西;
格式$a=’ niubi;
注意最后一定要分号
1.value可以直接省略;
echo的使用(标题 $ 常量 类型值)
(echo相当于input,可以让网站显示你想让他显示的东西)
-
格式echo’ ';
-
$value
相当于箱子,承载你想要输出的句子,后续echo中可以直接使用**.**value。
-
$value = '微博'; echo $value; $value ='3'; echo'int类型值为:'.$value; $value='true'; echo'布尔类型值为:'.$value; $value =array('1','2','3','123','true');结果: int类型值为:3 布尔类型值为:true-
常量的使用
define(‘name’,‘web’);
name就是一个盒子可以相当于$vlaue.
echo'<h2>03.常量</h2>; define('name','flyboat'); echo'name';结果: flyboat
-
var_dump的使用
(用于说明填入数据的类型)
var_dump(999);结果:int(999)
$value1 = '10';
$value2 = "10";
$value3 = "true";
if ($value1==$value2){echo'相等';
}else{echo'不相等';
}
则网页就会输出999的数据类型是int 还是bool
计算
$a='20';
$b='7';
$c='27';
echo'20+7='.$c;
**±*/%**如上述用法
拼接(.)
.
$a=20;
$b=1;
echo '$a.$b';
则输出的值为201
换行
echo’<>+br’;
ps:换行可以与拼接符号连用,直接在echo’ '中输入你想输出的内容后+.<>br
switch(与c语言用法差不多)
$a='5';
switch ($a){case 1:echo'哈哈';break;case 2:echo'jaja';break;default:echo'未知';
}
结果:未知
for循环
echo'<h1>php类型比较</h1>';
echo'<h1>for</h1>';
for($a=1;$a<10;$a++) {echo $a.'<br>';
}
结果:123456789
注意
要想让输出数字1,2,3而不是 a , a, a,a, a . < f o n t c o l o r = r e d > " 就不要给 a.<font color =red>"就不要给 a.<fontcolor=red>"就不要给a加引号
foreach循环
用一个表达式就可以直接将数组中全部的数字表达出来)
$arrayPeople=array('张三丰','李四没风','你是疯子');
foreach($arrayPeople as $value) {echo $value.'<br>';
}
结果:
张三丰
李四没风
你是疯子
注意:
$array后面+的英文可以自己定义.
数组的使用$
$arrayValue=array('张三丰','李四没风','你是疯子');
echo'数组为'.$arrayValue;
以上为形式.(array和people的位置可以调换!!!!!!)
注意数组总是从0开始的!!!
$niumaarray2[0]="0";
$niumaarray2[1]="1";
$niumaarray2[2]="2";
$niumaarray2[3]="3";
echo'<br>数组中第一个元素为'.$niumaarray2[0];
echo'<br>数组中第一个元素为'.$niumaarray2[1];
echo'<br>数组中第一个元素为'.$niumaarray2[2];
echo'<br>数组中第一个元素为'.$niumaarray2[3];结果:
数组中第一个元素为0
数组中第一个元素为1
数组中第一个元素为2
数组中第一个元素为3
$arrayniuma=array可以理解为布置一个牛马为数组
print_r的使用
使用情景:一般想让数组直接以原格式输出时使用
格式:print_r();
关联数组(count)
(用于输出数组的长度)
$arrayValue=array('张三丰','李四没风','你是疯子');
echo'这个数组的长度是:'.count($arrayValue);结果:
这个数组的长度是:3
数组的排序$
整理:key是按键,value是值键。
1. ksort是按键的生序;(关联数组)2. krsort是按键的降序;(关联数组)3. asort是按值的升序;按键会跟随值键移动(关联数组)4. arsort是按值的降序;按键会跟随值键移动(关联数组)5. sort是对数组进行升序排列(不是关联数组)6. rsort是对数组进行降序排列(不是关联数组)
从小到大
a r r a y n i u m a = a r r a y ( ′ 9 ′ , ′ 3 ′ , ′ 2 ′ , ′ 8 ′ ) ; s o r t ( arrayniuma=array('9','3','2','8'); sort( arrayniuma=array(′9′,′3′,′2′,′8′);sort(arrayniuma);
print_r($arrayniuma);
结果:
Array ( [0] => 2 [1] => 3 [2] => 8 [3] => 9 )
ps :print_r也可以换成foreach循环。2. 倒叙(从大到小)```php
$arrayniuma=array('9','3','2','8');
rsort($arrayniuma);
foreach($arrayniuma as $value){echo $value.'<br>';
}结果:
9
8
3
2
- 关联数组的降序
$arrayhah=array(0=>10,1=>20,2=>5);
arsort($arrayhah);
foreach($arrayhah as $key=>$value){echo $key.':'.$value.'<br>';
}结果:
1:20
0:10
2:5
全局变量($GLOBALS)
注意:GLOBALS必须是大写!!!!
$x=1;$y=2;
function add(){$GLOBALS["z"]=$GLOBALS["x"]+$GLOBALS["y"];
}
add();//调用add()
echo $GLOBALS["z"].'<br>';输出:3
_$SERVER用法
定义:包含头信息,路径,脚本位置等各种信息的数组
注意必须全部大写!!!
echo $_SERVER['PHP_SELF'];
echo'<br>';
echo $_SERVER['HTTP_HOST'];
echo'<br>';输出:
/index.php
www.firstph
while循环和do while循环
(与c几乎差不多)
$a=6;
while($a<10) {echo'当前a的值是'.$a.'<br>';$a++;echo'<br>';
}
输出:
当前a的值是6当前a的值是7当前a的值是8当前a的值是9
$s=0;
do {echo '当前s的值为' . $s . '<br>';$s++;
}while($s<5);
输出:
当前s的值为0
当前s的值为1
当前s的值为2
当前s的值为3
当前s的值为4
冒泡排序(相临的数字比较,若不符合要求就交换,依次往后推)
函数的使用
function Getname($value){echo'你是神仙码?'.$value;}
Getname('我是你大爸');结果:
你是神仙码?我是你大爸
这是基础传参.
我自己说就是先提前定义一个函数也就是getname,后面()里是他想承载的东西,承载的东西是个车子,需要在echo中被.后面承接,在这最后再在()填入你想填的话
psssss:
function Getname3($value){return '返回的值真的是:'.$value;
}
Getname2('niubiaaaaaaaa');结果是:
传递的参数值是:niubiaaaaaaaa
**return的使用:
function Getname4($value){return'接下来出场的是:'.$value;
}
$s = Getname4('wulaalallalalall');
echo$s;结果:接下来出场的是:wulaalallalalall
面向对象
相关文章:
php的使用及storm环境部署
php语法 环境搭建:在小皮中新建网站,注意先填写域名再点击选择根目录。 成功创建网站后,打开发现forbidden,因为新建的网站里是空的,需要新建index.php文件----> 在Phpstorm中左上角打开文件,打开那个文…...
高可用 Keepalived 服务部署流程
一、配置文件 vim /etc/keepalived/keepalived.confGLOBAL CONFIGURATION --- 全局配置部分VRRPD CONFIGURATION --- VRRP协议配置部分LVS CONFIGURATION --- LVS服务管理配置部分[rootlb01 ~]# cat /etc/keepalived/keepalived.…...
【新春特辑】2025年1月科技浪潮中的AI最新时事与科技趋势
2025年1月科技浪潮中的AI最新时事与科技趋势 一、AI科技时事 人工智能代理(AI Agent)的发展 最新进展:人工智能代理正逐步成为科技领域的新热点。这些代理能够自主执行特定任务,如管理日程、回复邮件等。然而,它们仍…...
解决Django非ORM模型提示初始化request问题
提问 Django在DRF时候自定义显示一些非model的字段提示TypeError: Field.__init__() got an unexpected keyword argument request 解答1 错误提示 TypeError: Field.__init__() got an unexpected keyword argument request 显示在创建序列化器实例时,传递了一个…...
G. XOUR
题目链接:Problem - G - Codeforces 题目大意:给你一个n长的序列, 其中你可以将a[i] XOR a[j] 的值 严格小于4的数对进行交换。 你可以操作任何几次, 让最后的数列最小。如果在 x 和 y 不同的第一个位置, xi<yi &…...
有没有个性化的UML图例
绿萝小绿萝 (53****338) 2012-05-10 11:55:45 各位大虾,有没有个性化的UML图例 绿萝小绿萝 (53****338) 2012-05-10 11:56:03 例如部署图或时序图的图例 潘加宇 (35***47) 2012-05-10 12:24:31 "个性化"指的是? 你的意思使用你自己的图标&…...
【RAG】SKLearnVectorStore 避免使用gpt4all会connection err
gpt4all 列表中包含了多个开源的大模型,如 Qwen2.5、Llama 3、DeepSeek、Mistral 等,但 不包含 OpenAI 的 GPT-4o。GPT-4o 是 OpenAI 提供的闭源模型,目前只能通过 OpenAI API 或 ChatGPT 官方应用(网页版、移动端)访问,并不支持本地运行,也没有 GGUF 量化格式的模型文件…...
vue框架技术相关概述以及前端框架整合
vue框架技术概述及前端框架整合 1 node.js 介绍:什么是node.js Node.js就是运行在服务端的JavaScript。 Node.js是一个事件驱动I/O服务端JavaScript环境,基于Google的V8引擎。 作用 1 运行java需要安装JDK,而Node.js是JavaScript的运行环…...
Spring Boot + Facade Pattern : 通过统一接口简化多模块业务
文章目录 Pre概述在编程中,外观模式是如何工作的?外观设计模式 UML 类图外观类和子系统的关系优点案例外观模式在复杂业务中的应用实战运用1. 项目搭建与基础配置2. 构建子系统组件航班服务酒店服务旅游套餐服务 3. 创建外观类4. 在 Controller 中使用外…...
牛客周赛 Round 78
题目目录 A-时间表查询!解题思路参考代码 B-一起做很甜的梦!解题思路参考代码 C-翻之解题思路参考代码 D-乘之解题思路参考代码 E-在树上游玩解题思路参考代码 A-时间表查询! \hspace{15pt} 今天是2025年1月25日,今年的六场牛客寒…...
【机器学习】自定义数据集 ,使用朴素贝叶斯对其进行分类
一、贝叶斯原理 贝叶斯算法是基于贝叶斯公式的,其公式为: 其中叫做先验概率,叫做条件概率,叫做观察概率,叫做后验概率,也是我们求解的结果,通过比较后验概率的大小,将后验概率最大的…...
02.01 生产者消费者
请使用条件变量实现2生产者2消费者模型,注意1个生产者在生产的时候,另外一个生产者不能生产。 1>程序代码 #include <stdio.h> #include <string.h> #include <unistd.h> #include <stdlib.h> #include <sys/types.h>…...
mac 手工安装OpenSSL 3.4.0
如果你希望继续安装 openssl-3.4.0 而不是降级到 3.1.1,可以尝试以下解决方案。根据你提供的错误信息,问题可能出在测试阶段(make test),我们可以尝试跳过测试或修复测试失败的原因。 --- ### **解决方案:…...
kamailio-ACC_JSON模块详解【后端语言go】
要确认 ACC_JSON 模块是否已经成功将计费信息推送到消息队列(MQueue),以及如何从队列中取值,可以按照以下步骤进行操作: 1. 确认 ACC_JSON 已推送到队列 1.1 配置 ACC_JSON 确保 ACC_JSON 模块已正确配置并启用。以下…...
ArkTS语言介绍
文章目录 一、基本知识声明类型运算符语句函数函数声明可选参数Rest参数返回类型函数的作用域函数调用函数类型箭头函数(又名Lambda函数)闭包函数重载类字段方法构造函数可见性修饰符对象字面量抽象类接口接口属性接口继承抽象类和接口泛型类型和函数泛型类和接口泛型约束泛型…...
海外问卷调查之渠道查,企业经营的指南针
海外问卷调查,是企业调研最常用到的方法,有目的、有计划、有系统地收集研究对象的现实状况或历史状况的一种有效手段,是指导企业经营的有效手段。 海外问卷调查充分运用历史法、观察法等方法,同时使用谈话、问卷、个案研究、测试…...
spring和Mybatis的逆向工程
在现代企业级开发中,使用Spring和MyBatis进行快速、高效的数据库操作是非常常见的。本文将深入探讨如何使用Spring和MyBatis进行逆向工程,帮助开发者自动生成数据库相关的代码,提高开发效率和代码质量。 一、什么是逆向工程 逆向工程是指从…...
【Android】问deepseek存储访问
这些天deepseek爆火,我们来问问android问题看看,如果问android中的应用怎么访问外部存储,回答的很清楚,但是如果问的深入一些,比如Android中是怎么控制让应用不能读取其他应用的外部存储文件的,回答的比较抽…...
Android记事本App设计开发项目实战教程2025最新版Android Studio
平时上课录了个视频,从新建工程到打包Apk,从头做到尾,没有遗漏任何实现细节,欢迎学过Android基础的同学参加,如果你做过其他终端软件开发,也可以学习,快速上手Android基础开发。 Android记事本课…...
python学习——函数的返回值
在 Python 中,函数的返回值决定了调用该函数后得到的结果。默认情况下,如果函数没有使用 return 语句或没有明确返回一个值,函数将返回 None。为了实现更复杂的逻辑,可以通过 return 语句返回多个值、错误信息或其他数据类型。 返…...
【Visual Leak Detector】跨平台 QT 项目集成 VLD 的便携式部署方案
1. Visual Leak Detector 与 QT 开发的那些事儿 做 C 开发的朋友应该都遇到过内存泄漏这个头疼的问题。特别是用 QT 开发跨平台应用时,随着项目规模扩大,内存管理就变得格外棘手。Visual Leak Detector(简称 VLD)这个轻量级工具简…...
Leaflet图层顺序实战:如何用setZIndex和bringToFront让你的地图层级不再混乱
Leaflet图层顺序实战:如何用setZIndex和bringToFront让你的地图层级不再混乱 当地图上同时存在多个图层时,你是否遇到过标注被底图遮盖、动态添加的标记消失在多边形下方,或是图层叠加顺序完全失控的情况?这些看似简单的层级问题&…...
实战指南:为spring boot项目快速配置最优jdk环境,助力应用高效部署
最近在准备一个Spring Boot项目时,发现JDK环境配置这个看似简单的环节其实藏着不少学问。特别是当项目需要兼顾开发效率和生产环境稳定性时,合理的JDK配置方案就显得尤为重要。今天就来分享下我的实战经验,以及如何利用工具快速搞定这些配置。…...
ai辅助硬件设计:让快马智能解析并生成db9接口与mcu连接的完整原理图与代码
在硬件开发中,DB9接口的设计与连接是个常见但容易出错的环节。最近我在一个嵌入式项目里需要实现STM32与DB9接口的RS-232通信,发现传统设计流程存在几个痛点: 引脚定义容易混淆 DB9公头和母头的引脚定义是相反的,比如母头的2号引脚…...
数字图像处理核心算法手撕实现 (一)
1. 数字图像处理基础概念 数字图像处理就像给照片做美容手术,只不过操作对象是像素矩阵。我第一次接触这个概念是在大学实验室,当时对着一个512x512的灰度图矩阵发呆了半小时,才明白那些0-255的数字代表着什么。 空间分辨率相当于照片的&qu…...
OpenClaw 的模型训练中,是否使用了半监督学习?伪标签策略?
关于OpenClaw在语音对话中是否支持多通道音频处理,其实可以从一个更贴近实际工程的角度来看。多通道音频处理在语音识别领域并不是一个简单的“支持”或“不支持”就能概括的问题,它背后涉及的是整个音频处理管道的设计思路和实际应用场景的匹配程度。 从…...
GitHub协作开发:AnythingtoRealCharacters2511动漫转真人开源项目实践
GitHub协作开发:AnythingtoRealCharacters2511动漫转真人开源项目实践 1. 项目介绍与准备 AnythingtoRealCharacters2511是一个专门将动漫角色转换为真实人像的开源项目,基于先进的AI图像生成技术。这个项目在GitHub上开源,让开发者可以共同…...
SDMatte效果对比评测:与传统抠图工具及在线API的全面比拼
SDMatte效果对比评测:与传统抠图工具及在线API的全面比拼 1. 开篇:为什么需要新的抠图方案 在数字内容创作领域,抠图一直是个让人又爱又恨的技术活。记得去年帮朋友做电商产品图,光是给20个商品抠图就花了我整整一个周末。传统工…...
比特币钱包密码与助记词恢复工具:从入门到精通
比特币钱包密码与助记词恢复工具:从入门到精通 【免费下载链接】btcrecover An open source Bitcoin wallet password and seed recovery tool designed for the case where you already know most of your password/seed, but need assistance in trying different…...
系统架构设计师常见高频考点总结之计算机网络
学习这些网络题目时,可以将网络层次结构想象成高速公路系统:核心层是连接城市的大型立交桥和主干道,追求极速转发;汇聚层是出口闸机,负责检查通行证(安全过滤)和分流;而接入层则是通…...
