windows下为php7.0.4安装目前官方版本对应的最新的php_mongodb.dll扩展,该扩展版本为1.1.6,支持最高版本MongoDB3.2,支持php7.0,;在phpinfo中可以看到MongoDB扩展,如图
但是在没有使用命名空间的情况下,new MongoClient();出现如下错误
Fatal error: Uncaught Error: Class 'MongoClient' not found in E:\.......... 这是为什么??请问
版本支持如下图(注意mongodb1.1那一行)
1、扩展对MOngoDB版本的支持
2、扩展对php版本的支持
回复讨论(解决方案)
没用过,不好说
不过你怎么知道就一定有 MongoClient 类呢?
你至少需要
print_r(get_extension_funcs('mongodb'));
看一下该扩展中提供了那些函数
print_r(get_declared_classes());
看一下预定义类中是否有你需要(或相似)的类名
php.net的官方文档是这么用的new MongoClient()
我也不清楚是否有这类,是不是我没有安装对应的VC?
vc14的下载地址是什么,怎么在网上找不到
@xuzuning
我不是让你看一下吗?
手边的事情就那么难?
Array
(
[0] => MongoDB\BSON\fromPHP
[1] => MongoDB\BSON\toPHP
[2] => MongoDB\BSON\toJSON
[3] => MongoDB\BSON\fromJSON
)
Array
(
[0] => stdClass
[1] => Exception
[2] => ErrorException
[3] => Error
[4] => ParseError
[5] => TypeError
[6] => ArithmeticError
[7] => DivisionByZeroError
[8] => Closure
[9] => Generator
[10] => ClosedGeneratorException
[11] => DateTime
[12] => DateTimeImmutable
[13] => DateTimeZone
[14] => DateInterval
[15] => DatePeriod
[16] => LogicException
[17] => BadFunctionCallException
[18] => BadMethodCallException
[19] => DomainException
[20] => InvalidArgumentException
[21] => LengthException
[22] => OutOfRangeException
[23] => RuntimeException
[24] => OutOfBoundsException
[25] => OverflowException
[26] => RangeException
[27] => UnderflowException
[28] => UnexpectedValueException
[29] => RecursiveIteratorIterator
[30] => IteratorIterator
[31] => FilterIterator
[32] => RecursiveFilterIterator
[33] => CallbackFilterIterator
[34] => RecursiveCallbackFilterIterator
[35] => ParentIterator
[36] => LimitIterator
[37] => CachingIterator
[38] => RecursiveCachingIterator
[39] => NoRewindIterator
[40] => AppendIterator
[41] => InfiniteIterator
[42] => RegexIterator
[43] => RecursiveRegexIterator
[44] => EmptyIterator
[45] => RecursiveTreeIterator
[46] => ArrayObject
[47] => ArrayIterator
[48] => RecursiveArrayIterator
[49] => SplFileInfo
[50] => DirectoryIterator
[51] => FilesystemIterator
[52] => RecursiveDirectoryIterator
[53] => GlobIterator
[54] => SplFileObject
[55] => SplTempFileObject
[56] => SplDoublyLinkedList
[57] => SplQueue
[58] => SplStack
[59] => SplHeap
[60] => SplMinHeap
[61] => SplMaxHeap
[62] => SplPriorityQueue
[63] => SplFixedArray
[64] => SplObjectStorage
[65] => MultipleIterator
[66] => ReflectionException
[67] => Reflection
[68] => ReflectionFunctionAbstract
[69] => ReflectionFunction
[70] => ReflectionGenerator
[71] => ReflectionParameter
[72] => ReflectionType
[73] => ReflectionMethod
[74] => ReflectionClass
[75] => ReflectionObject
[76] => ReflectionProperty
[77] => ReflectionExtension
[78] => ReflectionZendExtension
[79] => SessionHandler
[80] => __PHP_Incomplete_Class
[81] => php_user_filter
[82] => Directory
[83] => AssertionError
[84] => ZipArchive
[85] => LibXMLError
[86] => DOMException
[87] => DOMStringList
[88] => DOMNameList
[89] => DOMImplementationList
[90] => DOMImplementationSource
[91] => DOMImplementation
[92] => DOMNode
[93] => DOMNameSpaceNode
[94] => DOMDocumentFragment
[95] => DOMDocument
[96] => DOMNodeList
[97] => DOMNamedNodeMap
[98] => DOMCharacterData
[99] => DOMAttr
[100] => DOMElement
[101] => DOMText
[102] => DOMComment
[103] => DOMTypeinfo
[104] => DOMUserDataHandler
[105] => DOMDomError
[106] => DOMErrorHandler
[107] => DOMLocator
[108] => DOMConfiguration
[109] => DOMCdataSection
[110] => DOMDocumentType
[111] => DOMNotation
[112] => DOMEntity
[113] => DOMEntityReference
[114] => DOMProcessingInstruction
[115] => DOMStringExtend
[116] => DOMXPath
[117] => PDOException
[118] => PDO
[119] => PDOStatement
[120] => PDORow
[121] => SimpleXMLElement
[122] => SimpleXMLIterator
[123] => XMLReader
[124] => XMLWriter
[125] => PharException
[126] => Phar
[127] => PharData
[128] => PharFileInfo
[129] => CURLFile
[130] => finfo
[131] => MongoDB\Driver\Command
[132] => MongoDB\Driver\Cursor
[133] => MongoDB\Driver\CursorId
[134] => MongoDB\Driver\Manager
[135] => MongoDB\Driver\Query
[136] => MongoDB\Driver\ReadConcern
[137] => MongoDB\Driver\ReadPreference
[138] => MongoDB\Driver\Server
[139] => MongoDB\Driver\BulkWrite
[140] => MongoDB\Driver\WriteConcern
[141] => MongoDB\Driver\WriteConcernError
[142] => MongoDB\Driver\WriteError
[143] => MongoDB\Driver\WriteResult
[144] => MongoDB\Driver\Exception\LogicException
[145] => MongoDB\Driver\Exception\RuntimeException
[146] => MongoDB\Driver\Exception\UnexpectedValueException
[147] => MongoDB\Driver\Exception\InvalidArgumentException
[148] => MongoDB\Driver\Exception\ConnectionException
[149] => MongoDB\Driver\Exception\AuthenticationException
[150] => MongoDB\Driver\Exception\SSLConnectionException
[151] => MongoDB\Driver\Exception\WriteException
[152] => MongoDB\Driver\Exception\BulkWriteException
[153] => MongoDB\Driver\Exception\ExecutionTimeoutException
[154] => MongoDB\Driver\Exception\ConnectionTimeoutException
[155] => MongoDB\BSON\Binary
[156] => MongoDB\BSON\Javascript
[157] => MongoDB\BSON\MaxKey
[158] => MongoDB\BSON\MinKey
[159] => MongoDB\BSON\ObjectID
[160] => MongoDB\BSON\Regex
[161] => MongoDB\BSON\Timestamp
[162] => MongoDB\BSON\UTCDateTime
[163] => mysqli_sql_exception
[164] => mysqli_driver
[165] => mysqli
[166] => mysqli_warning
[167] => mysqli_result
[168] => mysqli_stmt
[169] => SoapClient
[170] => SoapVar
[171] => SoapServer
[172] => SoapFault
[173] => SoapParam
[174] => SoapHeader
[175] => SQLite3
[176] => SQLite3Stmt
[177] => SQLite3Result
[178] => XSLTProcessor
)
与MongoDB有关的就这几个而已
找到原因了,是因为旧版的php_mongo.dll才是使用MongoClient类来实现连接,新版的php_mongodb.dll是使用 MongoDB\Driver\Manager来连接的;注意该类命名空间不能省略。
这是旧版的参考文档 http://php.net/manual/zh/book.mongo.php
这是新版的参考文档 http://php.net/manual/zh/book.mongodb.php
下面是新版的使用方法:
$con = new MongoDB\Driver\Manager('mongodb://127.0.0.1:27017'); $query = new MongoDB\Driver\Query([]); $cursor = $con->executeQuery('databaseName.collectionName',$query); $it = new IteratorIterator($cursor); $it->rewind(); while ($doc=$it->current()) { print_r($doc); $it->next(); echo '<br/>'; }

PHP在现代编程中仍然是一个强大且广泛使用的工具,尤其在web开发领域。1)PHP易用且与数据库集成无缝,是许多开发者的首选。2)它支持动态内容生成和面向对象编程,适合快速创建和维护网站。3)PHP的性能可以通过缓存和优化数据库查询来提升,其广泛的社区和丰富生态系统使其在当今技术栈中仍具重要地位。

在PHP中,弱引用是通过WeakReference类实现的,不会阻止垃圾回收器回收对象。弱引用适用于缓存系统和事件监听器等场景,需注意其不能保证对象存活,且垃圾回收可能延迟。

\_\_invoke方法允许对象像函数一样被调用。1.定义\_\_invoke方法使对象可被调用。2.使用$obj(...)语法时,PHP会执行\_\_invoke方法。3.适用于日志记录和计算器等场景,提高代码灵活性和可读性。

Fibers在PHP8.1中引入,提升了并发处理能力。1)Fibers是一种轻量级的并发模型,类似于协程。2)它们允许开发者手动控制任务的执行流,适合处理I/O密集型任务。3)使用Fibers可以编写更高效、响应性更强的代码。

PHP社区提供了丰富的资源和支持,帮助开发者成长。1)资源包括官方文档、教程、博客和开源项目如Laravel和Symfony。2)支持可以通过StackOverflow、Reddit和Slack频道获得。3)开发动态可以通过关注RFC了解。4)融入社区可以通过积极参与、贡献代码和学习分享来实现。

PHP和Python各有优势,选择应基于项目需求。1.PHP适合web开发,语法简单,执行效率高。2.Python适用于数据科学和机器学习,语法简洁,库丰富。

PHP不是在消亡,而是在不断适应和进化。1)PHP从1994年起经历多次版本迭代,适应新技术趋势。2)目前广泛应用于电子商务、内容管理系统等领域。3)PHP8引入JIT编译器等功能,提升性能和现代化。4)使用OPcache和遵循PSR-12标准可优化性能和代码质量。

PHP的未来将通过适应新技术趋势和引入创新特性来实现:1)适应云计算、容器化和微服务架构,支持Docker和Kubernetes;2)引入JIT编译器和枚举类型,提升性能和数据处理效率;3)持续优化性能和推广最佳实践。


热AI工具

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

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

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

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

热门文章

热工具

SecLists
SecLists是最终安全测试人员的伙伴。它是一个包含各种类型列表的集合,这些列表在安全评估过程中经常使用,都在一个地方。SecLists通过方便地提供安全测试人员可能需要的所有列表,帮助提高安全测试的效率和生产力。列表类型包括用户名、密码、URL、模糊测试有效载荷、敏感数据模式、Web shell等等。测试人员只需将此存储库拉到新的测试机上,他就可以访问到所需的每种类型的列表。

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

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

记事本++7.3.1
好用且免费的代码编辑器

VSCode Windows 64位 下载
微软推出的免费、功能强大的一款IDE编辑器