activatematlab时调用函数错误

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了activatematlab时调用函数错误相关的知识,希望对你有一定的参考价值。

参考技术A 可能路径没有设置对。
首先建立M函数文件右键——新建——函数,其中函数文件的格式是:function[输出变量]=函数名称(输入变量),是编写的一个求1到n之和的求和函数。
保存的函数文件名来调用函数,依次把即将要被调用的文件保存到窗口CommandWindow运行的主界面文件夹,在CommandWindow窗口新起一行,写好文件名,把所有输入变量的具体数值填好,按键盘的回车键,即可表示调用运行了一次这个m文件得到的结果。

致命错误:未捕获的错误:在解析数据时调用字符串上的成员函数 find()

【中文标题】致命错误:未捕获的错误:在解析数据时调用字符串上的成员函数 find()【英文标题】:Fatal error: Uncaught Error: Call to a member function find() on string while parsing data 【发布时间】:2018-10-08 19:32:41 【问题描述】:

所以我试图通过 curl 和简单的 HTML dom 从这个网页 https://promo.pan.com.hr 获取一些信息。但不幸的是,我不断收到错误消息,我无法弄清楚出了什么问题......

<?php
include_once("simple_html_dom.php");
function file_get_contents_curl($url)

$ch = curl_init();

curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);

$data = curl_exec($ch);
curl_close($ch);

return $data;


$html = file_get_contents_curl("https://promo.pan.com.hr");


foreach($html->find("p") as $element)
echo $element->innertext . '<br>';
?>

有人知道我为什么会收到这个错误吗?

致命错误:未捕获的错误:调用 C:\Server\XAMPP\htdocs\pan\index.php:21 中字符串上的成员函数 find() 堆栈跟踪:#0 main 在 C:\Server 中抛出\XAMPP\htdocs\pan\index.php 在第 21 行

第 21 行是:

foreach($html->find("p") as $element)

【问题讨论】:

如果您发布完整的代码sn-p会更容易提供帮助。尝试打印$html 以确保正在读取文件?看起来你得到的是一个字符串而不是 HTML。 这是所有代码:) 编辑:几行没有显示,mb,现在显示所有内容 file_get_contents_curl 返回一个字符串,然后您尝试将其用作对象,这正是 PHP 所抱怨的。老实说,不要使用 simple_html_dom,它已经过时了,已经很久了,改用 DOMDocument。 $html = file_get_contents_curl("https://promo.pan.com.hr");$domd=@DOMDocument::loadHTML($html); foreach($domd-&gt;getElementsByTagName("p") as $element) echo $element-&gt;textContent. '&lt;br&gt;'; 【参考方案1】:

我认为file_get_contents_curl 是在调用它上面返回$data 的函数。

您的问题是[curl_exec][1] 返回一个字符串,它是网页的内容。我假设您使用的是simple_html_dom,在这种情况下,您需要先将该字符串转换为simple_html_dom 对象:

$html = str_get_html(file_get_contents_curl("https://promo.pan.com.hr"));

或者你可以使用:

$html = file_get_html("https://promo.pan.com.hr");

完全避免卷曲。

【讨论】:

这个有助于解决错误,但不幸的是,我只能从这个页面获取标题,有什么解决方案吗? 如果您在浏览器中访问该页面并查看页面源代码,您会看到所有 HTML 都是通过 javascript 加载的,这就是为什么您只能看到标题。不幸的是,我不相信 PHP 有任何方法可以呈现它。您可以尝试谷歌搜索“在 PHP 中呈现页面”? 您可能会发现这篇文章很有用:***.com/questions/50085261/… 再次感谢,我研究了一下,发现 phantom js 非常有用。感谢您为我指明正确的方向:)

以上是关于activatematlab时调用函数错误的主要内容,如果未能解决你的问题,请参考以下文章

在字符串错误时调用成员函数 profile()

Swift:调用函数时调用 EXC_BAD_INSTRUCTION

按下按钮时调用函数

未捕获的错误:连接到数据库时调用未定义的函数 mysqli_connect() [重复]

为啥在通过 const 引用传递临时值时调用复制构造函数?

PHP:每当调用子类中的函数时调用函数