草庐IT

数学运算

全部标签

php - 不带括号的字符串连接中的算术运算会导致奇怪的结果

考虑以下代码行:那个的输出是3,也就是计算$x-$y的预期结果。然而,预期的输出是:10-7=3因此,我的问题是,我与计算连接的字符串发生了什么?我知道为了产生我期望的结果,我需要将算术运算括在括号中:输出10-7=3但由于PHP不会提示原始代码,我想知道在这种情况下生成的输出背后的逻辑是什么?弦去哪儿了?如果有人能解释它或指出PHP手册中解释它的位置,我将不胜感激。 最佳答案 您的字符串'10-7='正在与$x连接。然后它被解释为int,结果为10,然后减去7,结果为3。更多解释,试试这个:echo(int)('10-7='.10

php - 内联三元运算符不工作

出于某种原因,我的三元运算符分配不适用于数组的第二部分。有人看到我做错了什么吗?它应该只是查看永久链接字段是否有值,如果没有,则将link_url插入数组。functiongetSiteMap(){$this->db->select('site_menu_structures_links.id,site_menu_structures_links.link_name');$this->db->from('site_menu_structures_links');$this->db->where('site_menu_structures_links.status_id',1);$thi

php - 如何在 preg_replace php 中进行数学运算

我有以下字符串$str=".block_1{width:100px;}.block_2{width:200px;}.block_3{width:300px;}";我想根据这个公式(pixelvalue/960)*100用百分比值替换px值我知道使用这样的正则表达式([0-9]+px)我可以找到所有值+px但是我需要再次运行它用(pixelvalue/960)*100替换它。'%'希望您明白我的意思,感谢您的帮助。好的,这是解决方案:$str=preg_replace_callback('([0-9]+px)',function($matches){return((str_replace

javascript - 有没有办法像在 JavaScript 中那样在 PHP 中使用 or 运算符?

当第一个属性不存在时,我想获取关联数组的另一个属性。JavaScript:varobj={"a":"123","b":"456"};vartest=obj.a||obj.b;console.log(test);是否可以在PHP中执行此操作:$arr=array("a"=>"123","b"=>"456");$test=$arr["a"]||$arr["b"];echo$test;当我运行PHP时,我得到1。有什么简短的方法可以做到吗? 最佳答案 在PHP中你可以做到//Checkif$arr["a"]exists,andassign

php - 关于将数学方程式写入代码的建议

我是一名自学成才的开发人员(大约3年了),我想通过学习如何将数学方程式写入代码来提高我的开发技能。这一直困扰着我,我看到许多书籍和文章都附有发光的数学方程式,看起来真的很有趣。我可以读懂其中的一部分(乘法、除法、小数、西格玛、变量),但在用代码实现它们时遇到了麻烦。例如,如何开始理解这些方程式:http://en.wikipedia.org/wiki/Manhattan_distance然后开始用代码编写它们?有什么地方可以推荐吗?这不是代码问题,而是缺乏基本的数学理解吗?我愿意听和读,因为我觉得这种能力对于开发人员来说非常重要。 最佳答案

php - 带类型转换的空合并运算符

我已经升级到PHP7并开始使用nullcoalesceoperator来转换类似的东西$email=isset($_SESSION['email'])?$_SESSION['email']:'';到$email=$_SESSION['email']??'';但如果我也在转换,我不知道该怎么做。例如,for旧语句$id=isset($_GET['id'])?(int)$_GET['id']:0;我会这样想$id=(int)$_GET['id']??0;应该有效,但从某种意义上说,如果未设置$_GET['id'],$id将解析为0但我收到了通知Notice:Undefinedindex:i

【2021年数学建模国赛C题第一问】基于TOPSIS法评价类模型

根据附件1,对402家供应商的供货特征进行量化分析,建立反映保障企业生产重要性的数学模型,在此基础上确定50家最重要的供应商,并在论文中列表给出结果。一、问题重述1.1问题背景   1.2需要解决的问题   本题目要求根据问题背景与附件数据,需解决以下问题:   1、根据附件1中402家供应商的相关数据,量化分析供货商的供货特征,建立能够反映保障企业生产重要性的数学模型,并确定50家最重要的供货商。二、问题分析2.1概论2.2问题1   问题1要求量化分析供货商的供货特征,并以此建立能够反映保障企业生产重要性的数学模型......四、符号说明符号意义rij第i家供应商第j周的供货量wi第i家供

php - 如何操作字符串以便在数学表达式中显式显示隐式乘法?

我想操纵像“...4+3(4-2)-...”这样的字符串变成“...4+3*(4-2)-...”,但它当然应该识别任何数字,d,然后是'('并将其更改为'd*('。我还想将')('更改为')*('如果可能,同时进行。如果有可能添加对pi或e等常量的支持,那就太好了。现在,我只是用这种愚蠢的方式来做:privatefunctionmake_implicit_multiplication_explicit($string){$i=1;if(strlen($string)>1){while(($i=strpos($string,"(",$i))!==false){if(strpos("012

PHP 使用 OR 运算符检查多个值的值

我有一个文件名($fname),我需要将$pClass分配给文件类型,之后加上“-”。目前我总是得到text-,不管它是什么文件类型。//Thisgetstheextentionforthefileandassignstheclasstotheicon$pieces=explode('.',$fname);$ext=array_pop($pieces);if($ext==(('txt')||('rtf')||('log')||('docx'))){$pClass='text-';}elseif($ext==(('zip')||('sitx')||('7z')||('rar')||('g

PHP怪异的数学

我得到了意外的变量计算值:$var1=$var2*(((1+$var3)^$var4)^$var5);我已经验证了$var2是3,$var3是0.1,$var4是1,$var5是1.1所以,$var1=3*(((1+0.1)^1)^1.1)=3.3316但在PHP中,$var1=3如果我将$var4更改为2,$var1=3*(((1+0.1)^1)^1.1)=3.6999但在PHP中,$var1=6这是为什么?有任何想法吗?我试过将所有变量显式声明为float。 最佳答案 请注意^不是“的力量”。您可能想看看thepowfuncti