当前位置: 首页 > news >正文

php的使用及storm环境部署

php语法

  1. 环境搭建:在小皮中新建网站,注意先填写域名再点击选择根目录。

  2. 成功创建网站后,打开发现forbidden,因为新建的网站里是空的,需要新建index.php文件----> 在Phpstorm中左上角打开文件,打开那个文件所在的文件夹---->新建一个php文件 叫index.php.这时候已经可以在小皮中打开面板了,但是在storm中无法打开------>在storm中 文件->设置->部署中新建 填写url地址是1中新建网站的域名 (也就是点击修改,出现的域名,直接复制粘贴过去即可)

$value的使用;

定义:相当于箱子,承载着你想让屏幕输出的东西;

格式$a=’ niubi;

注意最后一定要分号

1.value可以直接省略;

echo的使用(标题 $ 常量 类型值)

(echo相当于input,可以让网站显示你想让他显示的东西)

  1. 格式echo’ ';

  2. $value

    相当于箱子,承载你想要输出的句子,后续echo中可以直接使用**.**value。

  3. $value = '微博';
    echo $value;
    $value ='3';
    echo'int类型值为:'.$value;
    $value='true';
    echo'布尔类型值为:'.$value;
    $value =array('1','2','3','123','true');结果:   
    int类型值为:3
    布尔类型值为:true
    
    1. 常量的使用

      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

  1. **==**与c语言用法相同

  2. **===**判断两个变量的类型是否相等

    if语句的结构

    if( ){

    echo’ ';

    }else{

    ​ echo ';

    }

    (与c语言大差不差)

计算

$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;defaultecho'未知';        
}
结果:未知

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
  1. 关联数组的降序
$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语法 环境搭建&#xff1a;在小皮中新建网站&#xff0c;注意先填写域名再点击选择根目录。 成功创建网站后&#xff0c;打开发现forbidden&#xff0c;因为新建的网站里是空的&#xff0c;需要新建index.php文件----> 在Phpstorm中左上角打开文件&#xff0c;打开那个文…...

高可用 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科技时事 人工智能代理&#xff08;AI Agent&#xff09;的发展 最新进展&#xff1a;人工智能代理正逐步成为科技领域的新热点。这些代理能够自主执行特定任务&#xff0c;如管理日程、回复邮件等。然而&#xff0c;它们仍…...

解决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 显示在创建序列化器实例时&#xff0c;传递了一个…...

G. XOUR

题目链接&#xff1a;Problem - G - Codeforces 题目大意&#xff1a;给你一个n长的序列&#xff0c; 其中你可以将a[i] XOR a[j] 的值 严格小于4的数对进行交换。 你可以操作任何几次&#xff0c; 让最后的数列最小。如果在 x 和 y 不同的第一个位置&#xff0c; xi<yi &…...

有没有个性化的UML图例

绿萝小绿萝 (53****338) 2012-05-10 11:55:45 各位大虾&#xff0c;有没有个性化的UML图例 绿萝小绿萝 (53****338) 2012-05-10 11:56:03 例如部署图或时序图的图例 潘加宇 (35***47) 2012-05-10 12:24:31 "个性化"指的是&#xff1f; 你的意思使用你自己的图标&…...

【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 介绍&#xff1a;什么是node.js Node.js就是运行在服务端的JavaScript。 Node.js是一个事件驱动I/O服务端JavaScript环境&#xff0c;基于Google的V8引擎。 作用 1 运行java需要安装JDK&#xff0c;而Node.js是JavaScript的运行环…...

Spring Boot + Facade Pattern : 通过统一接口简化多模块业务

文章目录 Pre概述在编程中&#xff0c;外观模式是如何工作的&#xff1f;外观设计模式 UML 类图外观类和子系统的关系优点案例外观模式在复杂业务中的应用实战运用1. 项目搭建与基础配置2. 构建子系统组件航班服务酒店服务旅游套餐服务 3. 创建外观类4. 在 Controller 中使用外…...

牛客周赛 Round 78

题目目录 A-时间表查询&#xff01;解题思路参考代码 B-一起做很甜的梦&#xff01;解题思路参考代码 C-翻之解题思路参考代码 D-乘之解题思路参考代码 E-在树上游玩解题思路参考代码 A-时间表查询&#xff01; \hspace{15pt} 今天是2025年1月25日&#xff0c;今年的六场牛客寒…...

【机器学习】自定义数据集 ,使用朴素贝叶斯对其进行分类

一、贝叶斯原理 贝叶斯算法是基于贝叶斯公式的&#xff0c;其公式为&#xff1a; 其中叫做先验概率&#xff0c;叫做条件概率&#xff0c;叫做观察概率&#xff0c;叫做后验概率&#xff0c;也是我们求解的结果&#xff0c;通过比较后验概率的大小&#xff0c;将后验概率最大的…...

02.01 生产者消费者

请使用条件变量实现2生产者2消费者模型&#xff0c;注意1个生产者在生产的时候&#xff0c;另外一个生产者不能生产。 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&#xff0c;可以尝试以下解决方案。根据你提供的错误信息&#xff0c;问题可能出在测试阶段&#xff08;make test&#xff09;&#xff0c;我们可以尝试跳过测试或修复测试失败的原因。 --- ### **解决方案&#xff1a…...

kamailio-ACC_JSON模块详解【后端语言go】

要确认 ACC_JSON 模块是否已经成功将计费信息推送到消息队列&#xff08;MQueue&#xff09;&#xff0c;以及如何从队列中取值&#xff0c;可以按照以下步骤进行操作&#xff1a; 1. 确认 ACC_JSON 已推送到队列 1.1 配置 ACC_JSON 确保 ACC_JSON 模块已正确配置并启用。以下…...

ArkTS语言介绍

文章目录 一、基本知识声明类型运算符语句函数函数声明可选参数Rest参数返回类型函数的作用域函数调用函数类型箭头函数(又名Lambda函数)闭包函数重载类字段方法构造函数可见性修饰符对象字面量抽象类接口接口属性接口继承抽象类和接口泛型类型和函数泛型类和接口泛型约束泛型…...

海外问卷调查之渠道查,企业经营的指南针

海外问卷调查&#xff0c;是企业调研最常用到的方法&#xff0c;有目的、有计划、有系统地收集研究对象的现实状况或历史状况的一种有效手段&#xff0c;是指导企业经营的有效手段。 海外问卷调查充分运用历史法、观察法等方法&#xff0c;同时使用谈话、问卷、个案研究、测试…...

spring和Mybatis的逆向工程

在现代企业级开发中&#xff0c;使用Spring和MyBatis进行快速、高效的数据库操作是非常常见的。本文将深入探讨如何使用Spring和MyBatis进行逆向工程&#xff0c;帮助开发者自动生成数据库相关的代码&#xff0c;提高开发效率和代码质量。 一、什么是逆向工程 逆向工程是指从…...

【Android】问deepseek存储访问

这些天deepseek爆火&#xff0c;我们来问问android问题看看&#xff0c;如果问android中的应用怎么访问外部存储&#xff0c;回答的很清楚&#xff0c;但是如果问的深入一些&#xff0c;比如Android中是怎么控制让应用不能读取其他应用的外部存储文件的&#xff0c;回答的比较抽…...

Android记事本App设计开发项目实战教程2025最新版Android Studio

平时上课录了个视频&#xff0c;从新建工程到打包Apk&#xff0c;从头做到尾&#xff0c;没有遗漏任何实现细节&#xff0c;欢迎学过Android基础的同学参加&#xff0c;如果你做过其他终端软件开发&#xff0c;也可以学习&#xff0c;快速上手Android基础开发。 Android记事本课…...

python学习——函数的返回值

在 Python 中&#xff0c;函数的返回值决定了调用该函数后得到的结果。默认情况下&#xff0c;如果函数没有使用 return 语句或没有明确返回一个值&#xff0c;函数将返回 None。为了实现更复杂的逻辑&#xff0c;可以通过 return 语句返回多个值、错误信息或其他数据类型。 返…...

UDP(Echoserver)

网络命令 Ping 命令 检测网络是否连通 使用方法: ping -c 次数 网址ping -c 3 www.baidu.comnetstat 命令 netstat 是一个用来查看网络状态的重要工具. 语法&#xff1a;netstat [选项] 功能&#xff1a;查看网络状态 常用选项&#xff1a; n 拒绝显示别名&#…...

pam_env.so模块配置解析

在PAM&#xff08;Pluggable Authentication Modules&#xff09;配置中&#xff0c; /etc/pam.d/su 文件相关配置含义如下&#xff1a; 配置解析 auth required pam_env.so1. 字段分解 字段值说明模块类型auth认证类模块&#xff0c;负责验证用户身份&am…...

CentOS下的分布式内存计算Spark环境部署

一、Spark 核心架构与应用场景 1.1 分布式计算引擎的核心优势 Spark 是基于内存的分布式计算框架&#xff0c;相比 MapReduce 具有以下核心优势&#xff1a; 内存计算&#xff1a;数据可常驻内存&#xff0c;迭代计算性能提升 10-100 倍&#xff08;文档段落&#xff1a;3-79…...

Cilium动手实验室: 精通之旅---20.Isovalent Enterprise for Cilium: Zero Trust Visibility

Cilium动手实验室: 精通之旅---20.Isovalent Enterprise for Cilium: Zero Trust Visibility 1. 实验室环境1.1 实验室环境1.2 小测试 2. The Endor System2.1 部署应用2.2 检查现有策略 3. Cilium 策略实体3.1 创建 allow-all 网络策略3.2 在 Hubble CLI 中验证网络策略源3.3 …...

江苏艾立泰跨国资源接力:废料变黄金的绿色供应链革命

在华东塑料包装行业面临限塑令深度调整的背景下&#xff0c;江苏艾立泰以一场跨国资源接力的创新实践&#xff0c;重新定义了绿色供应链的边界。 跨国回收网络&#xff1a;废料变黄金的全球棋局 艾立泰在欧洲、东南亚建立再生塑料回收点&#xff0c;将海外废弃包装箱通过标准…...

ESP32 I2S音频总线学习笔记(四): INMP441采集音频并实时播放

简介 前面两期文章我们介绍了I2S的读取和写入&#xff0c;一个是通过INMP441麦克风模块采集音频&#xff0c;一个是通过PCM5102A模块播放音频&#xff0c;那如果我们将两者结合起来&#xff0c;将麦克风采集到的音频通过PCM5102A播放&#xff0c;是不是就可以做一个扩音器了呢…...

【算法训练营Day07】字符串part1

文章目录 反转字符串反转字符串II替换数字 反转字符串 题目链接&#xff1a;344. 反转字符串 双指针法&#xff0c;两个指针的元素直接调转即可 class Solution {public void reverseString(char[] s) {int head 0;int end s.length - 1;while(head < end) {char temp …...

sqlserver 根据指定字符 解析拼接字符串

DECLARE LotNo NVARCHAR(50)A,B,C DECLARE xml XML ( SELECT <x> REPLACE(LotNo, ,, </x><x>) </x> ) DECLARE ErrorCode NVARCHAR(50) -- 提取 XML 中的值 SELECT value x.value(., VARCHAR(MAX))…...

QT3D学习笔记——圆台、圆锥

类名作用Qt3DWindow3D渲染窗口容器QEntity场景中的实体&#xff08;对象或容器&#xff09;QCamera控制观察视角QPointLight点光源QConeMesh圆锥几何网格QTransform控制实体的位置/旋转/缩放QPhongMaterialPhong光照材质&#xff08;定义颜色、反光等&#xff09;QFirstPersonC…...

Git常用命令完全指南:从入门到精通

Git常用命令完全指南&#xff1a;从入门到精通 一、基础配置命令 1. 用户信息配置 # 设置全局用户名 git config --global user.name "你的名字"# 设置全局邮箱 git config --global user.email "你的邮箱example.com"# 查看所有配置 git config --list…...