编码海盗你好?☠️ 你是否曾发现自己迷失在编码的海洋中,只是试图使用 atan() 找出角度,并因无法找到角度而感到沮丧正确的方向。你并不孤单今天我们要进行一次冒险,在那里我们将找到 PHP 中名为 atan2() 的宝藏。让我们看看为什么 atan() 会让你陷入危险,而 atan2() 会让你安全到达港口。
那么我们就开始旅程吧。 ⛵
想象你有一张藏宝图。有人谈论一个岛屿,它被导航到地图上的一个点 (x, y)。你可以使用atan()——但是停下来!这只是故事的一部分。 atan() 可以直接带您进入 Davy Jones 的储物柜,或者更糟糕的是,带您进入充满错误的代码库。 ?所以如果你想得到正确的路径,你需要atan2(),也就是这个故事中的杰克船长。
atan()诅咒的故事
这个atan()函数几乎在所有语言中都可以找到。我们谈论php。 atan()主要用于计算角度。但这里有一个问题 - atan() 只关心 y/x 比率,它不关心你在哪个象限。如果你开始完全信任他,你可能会发现你正走错方向。为什么?因为 atan() 不返回整个图像,它只告诉相对于第一象限的角度。
为什么?因为 atan() 不给出整个图像 - 它只给出相对于第一象限的角度。这意味着当你向西行驶时,你实际上应该向东行驶!另一方面,atan2() 会同时考虑 x 和 y 坐标,并且像一个好的指南针一样准确地知道您位于哪个象限。
现在让我们更多地了解这两者之间的区别。
atan() 和 atan2() 之间的区别
现在让我们用代码语言来说:
- atan() 计算 y/x 比率的反正切,但不知道整个图像。目标是否在第二象限?第三? atan() 不知道,甚至不打扰。
atan()函数的参数是一个数字,即比率y/x的值,其中y和x是两个变量或数值。
atan(float $num): float
- 另一方面,atan2() 确切地知道 (x, y) 点在哪里,并返回任何象限中的正确角度。
atan2()函数的参数为2.
- $y:Y 坐标值。
- $x:X 坐标值。
atan2(float $y, float $x): float
让我们尝试通过一个例子来理解这个问题。
// $y এবং $x এর মান নির্ধারণ $y = 5; $x = -10; // atan() ব্যবহার - শুধুমাত্র y/x অনুপাত জানে $angle1 = atan($y / $x); echo "atan() angle: " . rad2deg($angle1) . " degrees\n"; // Outputs: -26.57 degrees // atan2() ব্যবহার - $x এবং $y উভয়ই বিবেচনায় নেয় $angle2 = atan2($y, $x); echo "atan2() angle: " . rad2deg($angle2) . " degrees\n"; // Outputs: 153.43 degrees
从示例中可以看出,atan() 确实返回一个角度。但方向并没有说明白。也就是说,不知道你处于哪个象限。另一方面,我们使用 atan2() 函数获得的值清楚地表明点 (x,which) 位于第二象限。现在我们可以很容易地了解金银岛在哪个方向了。
?弧度与度数(这不仅仅是数学,更是生活!)
PHP 的 atan() 和 atan2() 函数为您提供以弧度为单位的角度。这看起来像个笑话!别担心——这只是测量角度的不同方法。为了人类和海盗能够理解,我使用 rad2deg() 函数将其转换为度数。
我自己的atan()和atan2()
现在让我们尝试制作我们自己的atan()和atan2(),以更好地理解它们的操作。
⚠️ 如果您觉得这超出了您的理解范围,请跳过本节! ?
让我们创建 atan()
atan() 计算数字的反正切。近似该函数的一种方法是使用格雷戈里级数。以下是atan(z)的常用级数:
如果写得直一些,则代表 -
现在让我们用代码编写这个系列
atan(float $num): float
让我们创建atan2()
现在我们将使用 atan() 函数来创建atan2()。该函数的主要任务是仅识别正确的象限。那么为什么要拖延呢,我们来写吧 -
atan2(float $y, float $x): float
现在让我告诉你整个故事
现在我们看一下四个象限结果并解释每个象限:
- 第一象限(象限 I): 什么时候 x=10 和 y=5 那么atan($y / $x) 是26.57 度,atan2($y, $x) 是26.56 度。这两种情况都是在第一季度。
- 第二象限(象限 II): 什么时候 x=−10 和 y=5 那么atan($y / $x) 是-26.57 度,atan2($y, $x) 是153.43 度。这里atan2()清楚地表明了第二季度。
- 第三象限(第三象限): 什么时候 x=−10 和 y=−5 那么atan($y / $x) 是-26.57 度,atan2($y, $x) 是-233.43 度。现在是第三季了。
- 第四象限(第四象限): 什么时候 x=10 和 y=−5 那么atan($y / $x) 是-26.57 度,atan2($y, $x) 是-26.56 度。这是第四季。
☠️从错误中学习
所以下次当你在危险的角度和坐标海洋中航行时,不要仅仅依赖 atan()。使用 atan2() 并让你的船每次都朝着正确的方向行驶。这是指南针,可以让您远离可怕的戴维·琼斯储物柜的错误计算!
祝您的宝藏之旅一切顺利。
如果您想了解更多关于atan()和atan2()的信息,请访问以下链接:
- https://www.php.net/manual/en/function.atan.php
- https://www.php.net/manual/en/function.atan2.php
以上是atan() 的诅咒和 atan 的故事:编码世界迷失方向的故事的详细内容。更多信息请关注PHP中文网其他相关文章!

长URL(通常用关键字和跟踪参数都混乱)可以阻止访问者。 URL缩短脚本提供了解决方案,创建了简洁的链接,非常适合社交媒体和其他平台。 这些脚本对于单个网站很有价值

Laravel使用其直观的闪存方法简化了处理临时会话数据。这非常适合在您的应用程序中显示简短的消息,警报或通知。 默认情况下,数据仅针对后续请求: $请求 -

Laravel 提供简洁的 HTTP 响应模拟语法,简化了 HTTP 交互测试。这种方法显着减少了代码冗余,同时使您的测试模拟更直观。 基本实现提供了多种响应类型快捷方式: use Illuminate\Support\Facades\Http; Http::fake([ 'google.com' => 'Hello World', 'github.com' => ['foo' => 'bar'], 'forge.laravel.com' =>

这是有关用Laravel后端构建React应用程序的系列的第二个也是最后一部分。在该系列的第一部分中,我们使用Laravel为基本的产品上市应用程序创建了一个RESTFUL API。在本教程中,我们将成为开发人员

PHP客户端URL(curl)扩展是开发人员的强大工具,可以与远程服务器和REST API无缝交互。通过利用Libcurl(备受尊敬的多协议文件传输库),PHP curl促进了有效的执行

您是否想为客户最紧迫的问题提供实时的即时解决方案? 实时聊天使您可以与客户进行实时对话,并立即解决他们的问题。它允许您为您的自定义提供更快的服务

2025年的PHP景观调查调查了当前的PHP发展趋势。 它探讨了框架用法,部署方法和挑战,旨在为开发人员和企业提供见解。 该调查预计现代PHP Versio的增长

在本文中,我们将在Laravel Web框架中探索通知系统。 Laravel中的通知系统使您可以通过不同渠道向用户发送通知。今天,我们将讨论您如何发送通知OV


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

Dreamweaver CS6
视觉化网页开发工具

禅工作室 13.0.1
功能强大的PHP集成开发环境

EditPlus 中文破解版
体积小,语法高亮,不支持代码提示功能

SublimeText3 英文版
推荐:为Win版本,支持代码提示!

ZendStudio 13.5.1 Mac
功能强大的PHP集成开发环境