如果您对PHP,致命错误:为什么调用未定义的方法?和php调用未定义的函数怎么解决感兴趣,那么这篇文章一定是您不可错过的。我们将详细讲解PHP,致命错误:为什么调用未定义的方法?的各种细节,并对php
如果您对PHP,致命错误:为什么调用未定义的方法?和php调用未定义的函数怎么解决感兴趣,那么这篇文章一定是您不可错过的。我们将详细讲解PHP,致命错误:为什么调用未定义的方法?的各种细节,并对php调用未定义的函数怎么解决进行深入的分析,此外还有关于CakePHP – 致命错误:调用未定义的函数、Docker:致命错误:未捕获错误:调用未定义的函数 mysql_connect()、Laravel 4:PHP致命错误:调用未定义的方法Blueprint :: int()、Linux PHP致命错误:调用未定义的函数mysqli_connect()的实用技巧。
本文目录一览:- PHP,致命错误:为什么调用未定义的方法?(php调用未定义的函数怎么解决)
- CakePHP – 致命错误:调用未定义的函数
- Docker:致命错误:未捕获错误:调用未定义的函数 mysql_connect()
- Laravel 4:PHP致命错误:调用未定义的方法Blueprint :: int()
- Linux PHP致命错误:调用未定义的函数mysqli_connect()
PHP,致命错误:为什么调用未定义的方法?(php调用未定义的函数怎么解决)
我有一个简单的PHP结构.
class Ingredient和class Ingredients,我有以下代码:
class Ingredient
{
public function objectIsValid()
{
return $validate[0];
}
}
class Ingredients
{
public $ingObject;
function __construct(){ $ingObject = new Ingredient(); }
public function validateData()
{
if($this->ingObject->objectIsValid() /*** THE ERROR ***/)
{ echo "OK";}
else
{ echo "NOT";}
}
}
$Ingridients = new Ingredients();
$Ingridients->validateData();
我只是不明白为什么我会得到错误.
任何帮助将不胜感激.
谢谢!
解决方法:
function __construct(){ $ingObject = new Ingredient(); }
必定是
function __construct(){ $this->ingObject = new Ingredient(); }
在第一种情况下,您设置的是局部变量,而不是字段,因此它保持为空.然后在validateData上,对null变量调用一个方法.
我假设您已删除一些代码,因为您的Ingredient类没有意义(这里有一个$validate变量,未定义).
CakePHP – 致命错误:调用未定义的函数
Fatal error: Call to undefined function getAvnet() in C:\xampp\htdocs\ems\app\controllers\queries_controller.PHP on line 23
这条线是:
$ret = getAvnet('de',$searchstring);
据说打电话
function getAvnet($country,$query)
$ret = $this->getAvnet('de',$searchstring);
一般来说,你需要使用$this->访问类方法和变量时.
阅读:http://php.net/manual/en/language.oop5.basic.php
Docker:致命错误:未捕获错误:调用未定义的函数 mysql_connect()
如何解决Docker:致命错误:未捕获错误:调用未定义的函数 mysql_connect()?
我正在尝试设置在 docker 上运行的 wordpress 网站。它有 3 个服务,数据库,ssl_certficate,wordpress。
wordpress+数据库按预期工作。但是当我添加第三个服务时,即添加 SSL 证书。我收到了意想不到的错误。
docker-compose.yml 看起来像这样
version: ''3.0''
services:
#Database
mariadb:
image: mariadb:10.4
volumes:
- ./database:/var/lib/MysqL
restart: always
environment:
MysqL_ROOT_PASSWORD: password
MysqL_DATABASE: databasename
MysqL_USER: user
MysqL_PASSWORD: user
networks:
- shopme
#wordpress
wordpress:
depends_on:
- mariadb
image: wordpress:latest
restart: always
volumes:
- ''./:/var/www/html''
- ./uploads.ini:/usr/local/etc/PHP/conf.d/uploads.ini
environment:
wordpress_DB_HOST: mariadb:3306
wordpress_DB_NAME: databasename
wordpress_DB_USER: user
wordpress_DB_PASSWORD: user
networks:
- shopme
ssl:
depends_on:
- mariadb
- wordpress
build:
context: ./apache2/
dockerfile: Dockerfile
ports:
- ''80:80''
- ''443:443''
volumes:
- ./:/var/www/html
- /home/ubuntu/certs:/var/certs
- /home/ubuntu/configs:/etc/apache2/sites-enabled
links:
- mariadb
networks:
- shopme
networks:
shopme:
volumes:
mariadb:
Docker 文件如下所示:
FROM PHP:7.2-apache
# Setup Apache2 mod_ssl
RUN a2enmod ssl
# Working DIR
workdir /var/www/html
当我尝试访问该网站时,出现以下错误:
致命错误:未捕获的错误:调用未定义的函数 MysqL_connect() 在 /var/www/html/wp-includes/wp-db.PHP:1688
但是,当我从 ssl 服务卷中删除 ./:/var/www/html
时,我收到了不同的错误
禁止您无权访问此资源
与禁止错误相关的日志:
无法提供目录 /var/www/html/: 没有匹配的 DirectoryIndex (index.PHP,index.html) 找到,以及服务器生成的目录索引 被选项指令禁止
我只想创建一个单独的服务来放置我的证书并使用那个(ssl)容器打开端口(80 和 443)。所以 wordpress 会与 SSL Container 通信以添加证书。
任何线索可能是什么问题?我真的很感激哪怕是一点点帮助。
提前致谢。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)
Laravel 4:PHP致命错误:调用未定义的方法Blueprint :: int()
PHP Fatal error: Call to undefined method Illuminate\Database\Schema\Blueprint::int() in /home/casey/Sites/caseyhoffmann.me/laravel4/app/database/migrations/2013_10_22_232234_create_users_table.PHP on line 22
{“error”:{“type”:”Symfony\Component\Debug\Exception\FatalErrorException”,”message”:”Call to undefined method Illuminate\Database\Schema\Blueprint::int()”,”file”:”/home/casey/Sites/caseyhoffmann.me/laravel4/app/database/migrations/2013_10_22_232234_create_users_table.PHP”,”line”:22}}
我试过重新编译Laravel但无济于事.
有什么想法或建议吗?
$table->integer('user_id');
Linux PHP致命错误:调用未定义的函数mysqli_connect()
@R_301_2719@: Call to undefined function MysqLi_connect()
其中,我花了4个多小时试图想出来,我已经做了以下步骤:
>更改extension = MysqL.so和extension = MysqLi.so
> extension_dir = / PATH for PHP.ini
>检查加载了哪些模块或使用PHP-m安装
我只是把我的INFOPHP()放在PASTEBIN抱歉,我的网站在用户名和密码保护下运行,因为它是一个私人大学服务器..
http://pastebin.com/dKKdwWTb
我不太清楚我还能做些什么,以防我为PHP.ini文件添加了粘贴bin的链接
http://pastebin.com/QNK6mGqV
好吧,我希望有人能看到我能看到的东西,并能帮助我.
解决方法
编辑
看到你的网络PHPinfo()后,我们可以看到我的假设是正确的.你真的为你的apache使用不同的PHP.ini,并且在其中没有启用MysqLi扩展.
在PHPinfo()输出中,您可以获得有关PHP.ini文件的位置的详细信息,以及扩展目录的位置.
干杯.
今天的关于PHP,致命错误:为什么调用未定义的方法?和php调用未定义的函数怎么解决的分享已经结束,谢谢您的关注,如果想了解更多关于CakePHP – 致命错误:调用未定义的函数、Docker:致命错误:未捕获错误:调用未定义的函数 mysql_connect()、Laravel 4:PHP致命错误:调用未定义的方法Blueprint :: int()、Linux PHP致命错误:调用未定义的函数mysqli_connect()的相关知识,请在本站进行查询。
本文标签: