PHP 第二天

今天学习了PHP的一些语法基础:

 

数据类型、标识符、变量、常量、表达式、字符串、控制结构、函数、数组

 

感觉PHP怎么那么像C呢?整个一面向过程的编程语言,全是函数嘛!说是PHP从4.0添加了面向对象的支持,真的很想看看一个面向过程的编程语言是怎么支持成面向对象的语言的。那是明天的任务了,还是先总结一下今天学的东西吧。

  

同是脚本语言,拿Ruby和PHP比较一下,Ruby是完全的面向对象的语言,一切都是从对象开始,而PHP是面向过程的(暂时的,我还没看到面向对象呢 )。但是它们都拥有脚本语言的一些优点,让人写起代码来感觉特别爽(不用强制类型,变量用起来简单,且对函数,数组,字符串的处理都很灵活)。

 

罗列一下PHP语言的一些神奇之处:

 

输出

  echo(表达式,而非函数,标准输出)

  print printf(格式输出、标准输出)

  sprintf(格式输出、非标准输出)

  print_r(以一种很强的格式输出对象、数组,很好很强大)。

 

与类型相关的函数:

settype(mixed var ,string type),type7个可能的取值:array、boolean、float、integer、null、object、string

gettype(mixed var),可能有8个返回值:array、boolean、float、integer、null、object、unknow、string

is_name(mixed var)用来判断是否为某一类型的变量。

 

赋值:

引用赋值:

 

<?php
  $value1 = "helllo";
  $value2 =& $value1; //引用赋值,
  $value2 = "Goodbye";//value1的值也是"Goodbye"
?>

 

 

变量的四种作用域:

 

局部变量、函数参数、全局变量、静态变量

 

变量的变量:变量名是一个变量。

 

循环:

 

for(array_expr as $value){
  statement
}

for(array_expr as $key => $value){
  statement
}

 

 

 文件包含语句:

 include()、include_once() 可以选择执行,可以用IF/ELSE控制是否执行,如果包含出错,不会停止脚本

 require()、require_once()只要包含就会执行,如果包含出错,会停止脚本

 

函数:

默认参数、可选参数

<?php
  //默认参数值
  function salestax($price,$tax=0.0579){
    $total = $price + ($price * $tax);
    echo "Total cost :$total";
  }
   
  salestax(18.7); 
  //可选参数
  function salestax($price,$tax=""){
    $total = $price + ($price * $tax);
    echo "Total cost :$total";
  }

    salestax(18.7); 
?>

  

 

返回值(返回多个值)

<?php
  function retrieve_user_profile(){
   $user[] = "jason";
   $user[] = "jason@example.com";
   $user[] =  "English";
 }

  list($name,$email,$language) = retrive_user_profile();
?>

 

list 可以将数组分别赋值给变量

 

嵌套函数

<?php
  //函数嵌套
  function salestax($price,$tax){
    function convert_pound($dollars,$conversion=1.6){
     return $doallars * $conversion; 
   }
   
   $total = $price + ($price * s$tax);
  }
//可以直接调用
  convert_pound(15);
?>

 

 

注意:PHP不限制嵌套函数的作用域。

 

变量函数:指函数名也要在调用之前计算

 

数组:

PHP的数组跟Ruby中的HASH很类似,不用定义数组的长度,可以动态添加,每个数组的元素可是一个键/值对,且对数组元素的类型没有限制。

 

产生的一些疑问:

 

  1. 对PHP的代码组织方式、代码管理工具?( 这点Ruby就做的比较好:gem)。
  2. apache和PHP是如何联系起来的,WEB服务器的请求是如何转交给特定的PHP脚本的,PHP又是如何将生成的东东返回给WEB服务器的?PHP是如何实现CGI的?越想越郁闷。
内容概要:本文围绕六自由度机械臂的人工神经网络(ANN)设计展开,重点研究了正向与逆向运动学求解、正向动力学控制以及基于拉格朗日-欧拉法推导逆向动力学方程,并通过Matlab代码实现相关算法。文章结合理论推导与仿真实践,利用人工神经网络对复杂的非线性关系进行建模与逼近,提升机械臂运动控制的精度与效率。同时涵盖了路径规划中的RRT算法与B样条优化方法,形成从运动学到动力学再到轨迹优化的完整技术链条。; 适合人群:具备一定机器人学、自动控制理论基础,熟悉Matlab编程,从事智能控制、机器人控制、运动学六自由度机械臂ANN人工神经网络设计:正向逆向运动学求解、正向动力学控制、拉格朗日-欧拉法推导逆向动力学方程(Matlab代码实现)建模等相关方向的研究生、科研人员及工程技术人员。; 使用场景及目标:①掌握机械臂正/逆运动学的数学建模与ANN求解方法;②理解拉格朗日-欧拉法在动力学建模中的应用;③实现基于神经网络的动力学补偿与高精度轨迹跟踪控制;④结合RRT与B样条完成平滑路径规划与优化。; 阅读建议:建议读者结合Matlab代码动手实践,先从运动学建模入手,逐步深入动力学分析与神经网络训练,注重理论推导与仿真实验的结合,以充分理解机械臂控制系统的设计流程与优化策略。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值